- PVSM.RU - https://www.pvsm.ru -

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

В новом выпуске — разработка приложений на Python, новая AppCode, CI/CD для игр, новый код мобильной продуктивности от Microsoft, приоритеты дизайна, тенденции UX, маркетинга и ASO.

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

Тестирование новых фич, казалось бы, очень творческий и интересный процесс. Но что делать, если ошибки в интерфейсах повторяются из фичи в фичу, а большая часть времени тратится на отлавливание мелких интерфейсных проблем?

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

Этот дайджест доступен в виде еженедельной рассылки [3]. А ежедневно новости мы рассылаем в Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 4Telegram-канале [4].

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

(+12) Яндекс.Карты: Зашел на контроллер карт — сразу получил позицию пользователя [5]
(+9) Как научить UITextView красиво выделяться [6]
(+8) Создание инкрементального сервера для iOS Team [7]
(+4) AppCode 2019.3: работает быстрее, лучше понимает Swift, знает про Mac Catalyst, удобно отображает сообщения сборки [8]
Четыре урока, которые я вынесла от участия в Apple Entrepreneur Camp [9]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 6 Единственная жизнеспособная iOS-архитектура [10]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 7 Множественный выбор в TableView и CollectionView [11]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 8 Ускорение автоматических тестов в iOS [12]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 9 Awesome Apple Watch: разрабатываем для часов [13]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 10 5 iOS-библиотек для улучшения интерфейса приложения [14]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 11 Разнообразьте ваши CollectionView с этими библиотеками [15]

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

(+21) Android, Google и свободные лицензии на контент. Кто виноват и что делать [16]
(+17) Kivy. Сборка пакетов под Android и никакой магии [17]
(+8) Управление жестами: От края до края (I) [18]
(+1) 16 советов по разработке для Android на языке Kotlin. Часть 1 [19]
(0) Мой (нано)опыт с Yandex.Maps API или зачем нужна инструкция [20]
В Google Assistant заработал перевод разговоров [21]
Android сможет обновляться незаметно [22]
“Как работает Google Play” – отчет Google [23]
Android TV обновился до Android 10 [24]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 13 Android Dev Podcast #106: Запоздалые новости [25]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 14 Kotlin Multiplatform для Android/iOS: структуры проекта [26]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 15 Сложный UI/анимации на Android [27]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 16 Как реализовать Text-To-Speech в Android Studio [28]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 17 Создайте простой поиск с помощью RecyclerView [29]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 18 Kaspresso: фреймворк для автотестов, которого вы так ждали [30]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 19 Как мы справились с масштабной миграцией на AndroidX [31]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 20 7 уроков, которые я усвоил за два года Android-разработки [32]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 21 5 основных технологий Android-разработки на 2020 год [33]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 22 Запускаем  React Native-приложение на Android-эмуляторе [34]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 23 Как начать писать повторно используемые компоненты для Android? [35]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 24 AndroidSpeech: голос в текст [36]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 25 ParallaxScrollingView: галерея с паралаксом [37]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 26 The GoldMovies: кино для Android [38]

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

(+42) CI/CD в Playrix: как мы собираем и тестируем наши игры [39]
(+19) Как спроектировать систему уведомлений. Пошаговая инструкция с примерами [40]
(+16) Разработка мобильных приложений на Python. Библиотека KivyMD [41]
(+12) В некотором царстве, не в «спринговом» государстве. Доклад Яндекса [42]
(+9) Основы работы с Shader Graph в Unity [43]
(+9) Против всех: in-app голосовые помощники [44]
(+8) Модульные скетчи [45]
(+7) Повесть об Октопусе [46]
(+7) Свой CI/CD для Unity [47]
(+7) MVC в Unity со Scriptable Objects. Часть 3 [48]
(+6) React Native init vs Expo [49]
(+6) QA для начинающих: как протестировать ракету или самолёт? [50]
(+4) Тренды UX/UI в 2020 году [51]
(+4) Собрать команду UX-дизайнеров и потерять 7 миллионов из-за ошибок найма [52]
«Лаборатория Касперского» создает собственную мобильную ОС [53]
Как Делают Игры: Работа аутсорс-студии графики [54]
Mobile People Talks #12: Android NDK и C++ [55]
Podlodka #141: Здоровье программиста 2: питание и спорт [56]
Сушите вёсла #4: Очередь в back-end [57]
Вышел новый стабильный релиз Flutter [58]
Взламывая код мобильной продуктивности [59]
Правила, которые я выработал по результатам тысяч code review [60]
Кейс RetouchMe: успешная локализация приложения на 35 языков [61]
Над чем стоит работать в первую очередь: формула для расстановки приоритетов в дизайне интерфейсов [62]
Как мы пытались пройти в Y Combinator: от заявки до интервью [63]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 28 Почему мы отказались от Realm [64]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 29 Как быть успешным удаленным разработчиком [65]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 30 Как заставить ваших лучших разработчиков отказаться от увольнения [66]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 31 Как сделать приложение Hacker News App на Flutter [67]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 32 Пользовательских интерфейсов для приложений медитации [68]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 33 Как сделать ваш код переиспользуемым [69]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 34 10 способов сделать полностью персонализированный интерфейс [70]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 35 Безопасность мобильных приложений: лучшие практики для Android и iOS [71]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 36 UX для API [72]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 37 Хватит писать хреновый код [73]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 38 Эффективное тестирование программного обеспечения: 10 основных принципов [74]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 39 Эффективный процесс сбора требований: 5 основных ловушек  [75]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 40 Flutter: TabBar с кнопками в виде вкладок [76]
Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 41 Зачем начинать программный проект с консультации [77]

Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 42 Аналитика, маркетинг и монетизация

YouTube заработал $1 миллиард [78]
Топ-5 тенденций, повлиявших на маркетинг мобильных приложений в 2019 [79]
5 тенденций App Store Optimization на 2020 год [80]
Jow: умная доставка продуктов [81]
App Annie запустила продвинутый анализ отзывов [82]
WalkMe получает $90 млн. на платформу цифровой адаптации [83]
Melee: игровая социальная сеть от Imgur [84]
Отчет “Состояние маркетинга игровых приложений 2019” [85]

Дайджест интересных материалов для мобильного разработчика #326 (9 — 15 декабря) - 43 AI, Устройства, IoT

(+45) Как научить нейросеть воспроизводить игровую физику [86]
(+27) Соперник, ученик, помощник: игры, в которые играют люди… и машины [87]
(+24) Как сделать из нейросети журналиста, или «Секреты сокращения текста на Хабре без лишних слов» [88]
(+3) Проблемы и задачи реализации концепции Интернета Вещей [89]

Предыдущий дайджест [90]. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту [91].

Автор: DigitalEcosystems

Источник [92]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/ui/340041

Ссылки в тексте:

[1] Тысяча и один UI-баг, или Как помочь разработчику избегать типовых ошибок в UI: https://habr.com/ru/company/badoo/blog/479970/

[2] Новый опрос Developer Economics: https://www.developereconomics.net/?member_id=apptractor&lang=ru

[3] рассылки: http://apptractor.us3.list-manage2.com/subscribe?u=fbdb52f18301080a3cc983f4b&id=bb7bc0a9c0

[4] Telegram-канале: https://t.me/apptractor

[5] Яндекс.Карты: Зашел на контроллер карт — сразу получил позицию пользователя: https://habr.com/ru/post/479432/

[6] Как научить UITextView красиво выделяться: https://habr.com/ru/post/479992/

[7] Создание инкрементального сервера для iOS Team: https://habr.com/ru/post/479312/

[8] AppCode 2019.3: работает быстрее, лучше понимает Swift, знает про Mac Catalyst, удобно отображает сообщения сборки: https://habr.com/ru/company/JetBrains/blog/479450/

[9] Четыре урока, которые я вынесла от участия в Apple Entrepreneur Camp: https://vc.ru/life/96333-chetyre-uroka-kotorye-ya-vynesla-ot-uchastiya-v-apple-entrepreneur-camp

[10] Единственная жизнеспособная iOS-архитектура: https://medium.com/flawless-app-stories/the-only-viable-ios-architecture-c42f7b4c845d

[11] Множественный выбор в TableView и CollectionView: https://medium.com/better-programming/ios-13-multi-selection-gestures-in-tableview-and-collectionview-619d515eef16

[12] Ускорение автоматических тестов в iOS: https://medium.com/flawless-app-stories/speeding-up-automated-tests-in-ios-fdf20080710e

[13] Awesome Apple Watch: разрабатываем для часов: https://apptractor.ru/info/github/awesome-apple-watch.html

[14] 5 iOS-библиотек для улучшения интерфейса приложения: https://medium.com/better-programming/5-ios-libraries-to-make-your-app-interface-better-fcbb2292e0e8

[15] Разнообразьте ваши CollectionView с этими библиотеками: https://medium.com/better-programming/spice-up-your-apps-collection-views-with-these-7-libraries-cda2379ce4d7

[16] Android, Google и свободные лицензии на контент. Кто виноват и что делать: https://habr.com/ru/post/479322/

[17] Kivy. Сборка пакетов под Android и никакой магии: https://habr.com/ru/post/479236/

[18] Управление жестами: От края до края (I): https://habr.com/ru/company/otus/blog/479948/

[19] 16 советов по разработке для Android на языке Kotlin. Часть 1: https://habr.com/ru/company/otus/blog/479406/

[20] Мой (нано)опыт с Yandex.Maps API или зачем нужна инструкция: https://habr.com/ru/post/480284/

[21] В Google Assistant заработал перевод разговоров: https://apptractor.ru/info/apps/google-assistant-interpreter-mode.html

[22] Android сможет обновляться незаметно: https://apptractor.ru/info/news/android-resume-on-reboot.html

[23] “Как работает Google Play” – отчет Google: https://apptractor.ru/deploy/app-stores/how-google-play-works-2019.html

[24] Android TV обновился до Android 10: https://apptractor.ru/info/news/android-tv-10.html

[25] Android Dev Podcast #106: Запоздалые новости: https://androiddev.apptractor.ru/android-dev-podcast-106/

[26] Kotlin Multiplatform для Android/iOS: структуры проекта: https://medium.com/@alistairsykes/kotlin-multiplatform-android-ios-project-structure-strategies-b262eec30e1a

[27] Сложный UI/анимации на Android: https://medium.com/@nikhilpanju22/complex-ui-animation-on-android-8f7a46f4aec4

[28] Как реализовать Text-To-Speech в Android Studio: https://www.androidhire.com/implement-text-to-speech-android-studio/

[29] Создайте простой поиск с помощью RecyclerView: https://medium.com/better-programming/recyclerview-search-326030d4bdf1

[30] Kaspresso: фреймворк для автотестов, которого вы так ждали: https://proandroiddev.com/kaspresso-the-autotest-framework-that-you-have-been-looking-forward-to-part-i-e102ed384d11

[31] Как мы справились с масштабной миграцией на AndroidX: https://blog.gojekengineering.com/how-we-handled-a-large-scale-androidx-migration-5f4a2208c0a0

[32] 7 уроков, которые я усвоил за два года Android-разработки: https://medium.com/better-programming/7-lessons-i-learned-in-two-years-of-android-development-5d06ee744082

[33] 5 основных технологий Android-разработки на 2020 год: https://blog.candyspace.com/5-essential-android-techniques-for-2020

[34] Запускаем  React Native-приложение на Android-эмуляторе: https://medium.com/@Charles_Stover/create-a-react-native-app-on-an-android-emulator-1c0d94f288ae

[35] Как начать писать повторно используемые компоненты для Android?: https://medium.com/swlh/how-to-start-writing-reusable-components-for-android-apps-31dd7ac39204

[36] AndroidSpeech: голос в текст: https://apptractor.ru/info/github/androidspeech.html

[37] ParallaxScrollingView: галерея с паралаксом: https://apptractor.ru/info/github/parallaxscrollingview.html

[38] The GoldMovies: кино для Android: https://apptractor.ru/info/github/the-goldmovies.html

[39] CI/CD в Playrix: как мы собираем и тестируем наши игры: https://habr.com/ru/company/playrix/blog/479966/

[40] Как спроектировать систему уведомлений. Пошаговая инструкция с примерами: https://habr.com/ru/company/wrike/blog/479324/

[41] Разработка мобильных приложений на Python. Библиотека KivyMD: https://habr.com/ru/post/480018/

[42] В некотором царстве, не в «спринговом» государстве. Доклад Яндекса: https://habr.com/ru/company/yandex/blog/478788/

[43] Основы работы с Shader Graph в Unity: https://habr.com/ru/post/479302/

[44] Против всех: in-app голосовые помощники: https://habr.com/ru/company/just_ai/blog/479554/

[45] Модульные скетчи: https://habr.com/ru/post/480232/

[46] Повесть об Октопусе: https://habr.com/ru/company/youla/blog/479924/

[47] Свой CI/CD для Unity: https://habr.com/ru/post/479884/

[48] MVC в Unity со Scriptable Objects. Часть 3: https://habr.com/ru/company/plarium/blog/479550/

[49] React Native init vs Expo: https://habr.com/ru/post/480258/

[50] QA для начинающих: как протестировать ракету или самолёт?: https://habr.com/ru/company/redmadrobot/blog/479668/

[51] Тренды UX/UI в 2020 году: https://habr.com/ru/company/edison/blog/480142/

[52] Собрать команду UX-дизайнеров и потерять 7 миллионов из-за ошибок найма: https://habr.com/ru/post/479844/

[53] «Лаборатория Касперского» создает собственную мобильную ОС: https://apptractor.ru/info/news/kasperskyos.html

[54] Как Делают Игры: Работа аутсорс-студии графики: https://apptractor.ru/info/media/graphic-outsource.html

[55] Mobile People Talks #12: Android NDK и C++: https://apptractor.ru/info/media/mobile-people-talks-12.html

[56] Podlodka #141: Здоровье программиста 2: питание и спорт: https://apptractor.ru/info/media/podlodka-141.html

[57] Сушите вёсла #4: Очередь в back-end: https://apptractor.ru/develop/vesla-4.html

[58] Вышел новый стабильный релиз Flutter: https://apptractor.ru/info/news/flutter-1-12.html

[59] Взламывая код мобильной продуктивности: https://apptractor.ru/info/articles/microsoft-fluid.html

[60] Правила, которые я выработал по результатам тысяч code review: https://apptractor.ru/info/articles/code-review-rules.html

[61] Кейс RetouchMe: успешная локализация приложения на 35 языков: https://apptractor.ru/marketing-monetization/localization/retouchme-app-localization.html

[62] Над чем стоит работать в первую очередь: формула для расстановки приоритетов в дизайне интерфейсов: https://vc.ru/design/96251-nad-chem-stoit-rabotat-v-pervuyu-ochered-formula-dlya-rasstanovki-prioritetov-v-dizayne-interfeysov

[63] Как мы пытались пройти в Y Combinator: от заявки до интервью: https://vc.ru/life/96458-kak-my-pytalis-proyti-v-y-combinator-ot-zayavki-do-intervyu

[64] Почему мы отказались от Realm: https://blog.cyborch.com/why-we-dropped-realm/

[65] Как быть успешным удаленным разработчиком: https://levelup.gitconnected.com/how-to-be-a-successful-remote-developer-1b93113355ad

[66] Как заставить ваших лучших разработчиков отказаться от увольнения: https://medium.com/swlh/how-to-stop-your-best-developers-from-quitting-8e251c110f36

[67] Как сделать приложение Hacker News App на Flutter: https://medium.com/better-programming/building-hacker-news-in-flutter-a03a716dce2f

[68] Пользовательских интерфейсов для приложений медитации: https://uxplanet.org/5-user-interface-for-meditation-app-71bc7586a687

[69] Как сделать ваш код переиспользуемым: https://levelup.gitconnected.com/how-to-make-your-code-reusable-891ea5db415c

[70] 10 способов сделать полностью персонализированный интерфейс: https://uxdesign.cc/10-ways-to-make-a-fully-personalized-ui-58b59247b06e

[71] Безопасность мобильных приложений: лучшие практики для Android и iOS: https://quickbirdstudios.com/blog/mobile-app-security-best-practices-android-ios/

[72] UX для API: https://ux.christmas/2019/11

[73] Хватит писать хреновый код: https://medium.com/better-programming/stop-writing-crap-code-7d3458f42384

[74] Эффективное тестирование программного обеспечения: 10 основных принципов: https://techhype.io/?story=effective-software-qa-testing-10-essential-principles

[75] Эффективный процесс сбора требований: 5 основных ловушек : https://techhype.io/?story=effective-requirements-gathering-process-avoid-5-major-traps

[76] Flutter: TabBar с кнопками в виде вкладок: https://medium.com/better-programming/flutter-tabbar-with-buttons-as-tabs-ios-style-4dff5ae6c055

[77] Зачем начинать программный проект с консультации: https://anadea.info/blog/why-start-the-software-project-with-consulting-rounds

[78] YouTube заработал $1 миллиард: https://apptractor.ru/measure/app-store-analytics/youtube-1-billion.html

[79] Топ-5 тенденций, повлиявших на маркетинг мобильных приложений в 2019: https://apptractor.ru/marketing-monetization/top-5-trends-app-marketing.html

[80] 5 тенденций App Store Optimization на 2020 год: https://apptractor.ru/marketing-monetization/app-store-optimization/app-store-optimization-2020.html

[81] Jow: умная доставка продуктов: https://apptractor.ru/info/techhype/jow.html

[82] App Annie запустила продвинутый анализ отзывов: https://apptractor.ru/measure/feedback-helpdesk/app-annie-advanced-reviews.html

[83] WalkMe получает $90 млн. на платформу цифровой адаптации: https://apptractor.ru/info/news/walkme.html

[84] Melee: игровая социальная сеть от Imgur: https://apptractor.ru/info/techhype/melee.html

[85] Отчет “Состояние маркетинга игровых приложений 2019”: https://apptractor.ru/info/media/state-of-gaming-2019.html

[86] Как научить нейросеть воспроизводить игровую физику: https://habr.com/ru/company/pixonic/blog/479292/

[87] Соперник, ученик, помощник: игры, в которые играют люди… и машины: https://habr.com/ru/article/479782/

[88] Как сделать из нейросети журналиста, или «Секреты сокращения текста на Хабре без лишних слов»: https://habr.com/ru/company/abbyy/blog/479400/

[89] Проблемы и задачи реализации концепции Интернета Вещей: https://habr.com/ru/post/479890/

[90] Предыдущий дайджест: https://habr.com/ru/company/digital-ecosystems/blog/479222/

[91] почту: mailto:lbogolubov@gmail.com

[92] Источник: https://habr.com/ru/post/480350/?utm_source=habrahabr&utm_medium=rss&utm_campaign=480350