Дайджест интересных материалов для мобильного разработчика #237 (15-21 января)

В номо дайджесте мы рассказываем про особую магию HQ Trivia, самую необычную головоломку в Google Play, мгновенную локализацию, итоги 2017 года и перспективы 2018.

Читать дальше →

Как кешировать данные AVURLAsset, загруженные AVPLayer'ом

iFunny app image


Привет, Хабр. Меня зовут Влад. Я работаю iOS разработчиком в FunCorp. Мы делаем приложения в сфере развлечений. Возможно, вы слышали о нашем флагмане iFunny и популярном в СНГ приложении АйДаПрикол. В этой статье я расскажу о том, как получить данные видео, загруженные плеером, для дальнейшей работы с ними.

Читать дальше →

[Видео] Доклады с митапа iOS-разработчиков Red Hot Chili Apples


Прошлый год закончился регулярной встречей iOS-разработчиков Red Hot Chili Apples. Под катом вы найдете записи докладов об альтернативе VIPER, базовых принципах функционального программирования на iOS, а также о том, как делать качественный проект при ограниченных ресурсах.

Читать дальше →

Гибкая методология для мобильной разработки

image

Agile development is especially useful for mobile app development. The agile methodology provides our clients with a continuous feedback loop. Sourcebits mobile app design and development clients see milestones every 2-3 weeks. They aren’t left to wait until the very end of the project. Agile development for mobile apps means clients provide feedback every step of the way to ensure the success of the project. – Joe Chen, CTO, Sourcebits

Читать дальше →

Знакомство с движком AVAudioEngine для работы со звуком на iOS

Просматривая рунет в поисках статей на эту тему, удивляешься их отсутствию. Возможно, людям хватает описания в хэдере класса, а может, все просто предпочитают изучать его опытным путём. Так или иначе, для тех, кто первый раз сталкивается с этим классом или чувствует потребность в наглядных примерах, мы предлагаем это несложное практическое руководство от наших партнеров, Music Topia. В плане работы со звуком Apple находится впереди своих конкурентов, и это неспроста. Компания предлагает хороший инструментарий для проигрывания, записи и обработки треков. Благодаря этому на AppStore можно увидеть огромное количество приложений, которые так или иначе работают с аудиоконтентом. В их число входят проигрыватели с хорошим звуком (Vox), аудиоредакторы с инструментами для редактирования и наложения эффектов (Sound Editor), приложения, изменяющие голос (Virtuoso Piano), различные симуляторы музыкальных инструментов, которые дают довольно точную имитацию соответствующего звучания (Voicy Helium), и даже симуляторы DJ-установок (X Djing).

В поисках идеальной архитектуры

image
За 9 лет работы фич в проектах роботов становилось все больше, запутаться в коде становилось все проще.
Когда разработчиков стало больше десятка, появилась еще одна проблема – болезненная ротация людей между проектами. Аутсорс-разработка славится жесткими дедлайнами, и у разработчиков нет месяцев или недель на погружение в особенности нового проекта, в то же время работа над разными проектами нужна для развития специалистов.
Главная проблема, которая возникает при долгосрочном развитии приложения – масштабируемость. Решить ее может переход на новую архитектуру или рефакторинг кодовой базы и добавление новых сущностей, которые разгружают объекты с большим количеством обязанностей.
Читать дальше →

Дайджест интересных материалов для мобильного разработчика #232 (27 ноября-3 декабря)

У нас получился какой-то гигантский дайджест, в котором нашлось место всему — борьбе с читерами, зараплатам разработчиков, дополненным и виртуальным реальностям, бургерам и пиву, архитектурам и картографии.

Читать дальше →

Model-View-Presenter — компромисс и универсальный рецепт

image Аббревиатуру MVP можно интерпретировать по разному, но в статье речь пойдет не о спорте. В сети есть большое количество статей по архитектурным паттернам для iOS и Android разработчиков, и по MVP в частности. Иногда паттерн рассматривается в контексте обеих платформ. Кто-то выбирает данный паттерн для улучшения тестируемости своего кода, кто-то использует его в основном для разделения кода представления от модели. Также встречаются решения, которые используют MVP для унифицирования кода платформ, при условии что разработчики в компании владеют данными технологиями. Но общих слов и выводов иногда недостаточно для разработчика-прагматика. При проектировании коммерческих приложений неизбежно возникает множество деталей, которые общая архитектурная концепция не может раскрыть, и нельзя сказать, что есть единственное каноническое решение. В статье я постараюсь описать ситуации, с которыми очень часто сталкиваются мобильные разработчики на реальных проектах, и когда действительно стоит задуматься о переходе на архитектурный паттерн более сложный чем “One UIViewController (Activity) to rule them all”. Или лучше сказать, когда нам это будет выгодно. Далее речь пойдет о компромиссе между временем и сложностью разработки в реалиях “обычных” проектов, которые в основном приходят на оценку и разработку. Читать дальше →...Далее...

Визуализация процесса обучения нейронной сети средствами TensorFlowKit

Hint
Перед прочтением этой статьи советую ознакомиться с предыдущей статьей о TensorFlowKit и поставить star репозиторию.
Я не люблю читать статьи, сразу иду на GitHub
GitHub: TensorFlowKit GitHub: Example GitHub: Другое TensorFlowKit API Поситив репозиторий, добавьте его в «Stars» это поможет мне написать больше статей на эту тему.
image Начиная работать в сфере машинного обучения, мне было тяжело переходить от объектов и их поведений к векторам и пространствам. Сперва все это достаточно тяжело укладывалось в голове и далеко не все процессы казались прозрачными и понятными с первого взгляда. По этой причине все, что происходило внутри моих наработок, я пробовал визуализировать: строил 3D модели, графики, диаграммы, изображения и тд. Говоря об эффективной разработке систем машинного обучения, всегда поднимается вопрос контроля скорости обучения, анализа процесса обучения, сбора различных метрик обучения и тд. Особая сложность заключается в том, что мы (люди) привыкли оперировать 2х и 3х мерными пространствами, описывая различные процессы вокруг нас. Процессы внутри нейронных сетей происходят в многомерных пространствах, что серьезно усложняет их понимание. Осознавая это, инженеры по всему миру стараются разработать различные подходы к визуализации или трансформации многомерных данных в более простые и понятные формы. Существуют целые сообщества, решающие такого рода задачи, например ...Далее...


Последние посты