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

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

В этом выпуске материалы про дизайн-системы, быструю доставку фич, подписку, законы UX, трудности локализации, про продвижение в Китае и даже создание магических книг. Подключайтесь!

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

Когда в начале 2017 года мы впервые задумались о создании собственной системы доставки дизайна в код, об этом уже многие говорили и кто-то даже делал. Однако, об опыте построения кроссплатформенных дизайн-систем и по сей день мало что известно, а понятных и проверенных рецептов, описывающих технологии и способы подобной трансформации процесса имплементации дизайна в уже работающий продукт как не было, так и нет.

В этой статье я на реальных примерах покажу, как мы действуем в таких ситуациях и какие принципы помогают нам сделать выбор в пользу того или иного решения задачи. Разбор примеров должен помочь понять наш паттерн мышления [3]: каким образом можно иногда срезать углы, ускорив разработку.

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

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

(+17) Адаптивный дизайн приложения под каждого пользователя [6]
(+14) Руководство по реализации авто-возобновляемых подписок в iOS-приложениях [7]
(+7) Три видео для тех, кто пишет под iOS [8]
(+7) Изучая Dependency Injection [9]
(+6) Emoji в интерфейсе iOS приложения и требования Apple [10]
(+3) Архитектурный шаблон «Строитель» во вселенной Swift и iOS/macOS [11]
(+2) Спокойствие спокойствию рознь [12]
iOS 13 будет предупреждать об удалении приложений с активной подпиской [13]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 6 Сканирование документов с Vision и VisionKit в iOS 13 [14]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 7 Я позволил моему iOS-проекту превратиться в хаос [15]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 8 Как сделать чат-приложение на SwiftUI [16]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 9 Просмотр WWDC: разговор с бывшим руководителем Apple по апруву приложений [17]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 10 Привет, Combine [18]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 11 Почему iOS-разработчики чувствуют себя остановившимися в развитии и что делать [19]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 12 Создаем формы на SwiftUI [20]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 13 Добавляем Swift Package Dependency в iOS-проект с Xcode 11 [21]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 14 Как удаление Swift-кода может сделать вас более ценным iOS-разработчиком [22]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 15 iOS 13 против Android Q: кто завоюет рынок? [23]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 16 Weather: погода и SwiftUI [24]

Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 17 Android

(+4) Современный подход к конкурентности в Android: корутины в Kotlin [25]
Google отказался от планшетов [26]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 18 Создаем приложение для блокирования экрана Android [27]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 19 Пример Чистой архитектуры с Kotlin Multiplatform [28]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 20 Что ожидать от публикации первого приложения [29]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 21 Отзыв с одной звездой [30]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 22 Поисковый фильтр на Recycler View [31]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 23 Android Fragments: общие запросы и ошибки [32]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 24 Объяснение Android ConstraintLayout с помощью сложного UI [33]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 25 Используем материальные темы в кастомном View [34]

Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 26 Разработка

(+19) Как мобильное приложение помогает студенту с проблемами со зрением передвигаться по Москве [35]
(+9) Восемь именных законов в UX дизайне (часть 2) [36]
(+9) Упрощаем рисование Enum Flags в Unity [37]
(+8) Эволюция разработчиков: каких игр нам ждать в будущем [38]
(+7) 4 трудности при локализации мобильных игр на примере Fishing Clash [39]
(+6) Безопасные push-уведомления: от теории к практике [40]
(+2) RectTransformUtility, или как сделать компонент, который анимированно сдвигает элементы UI за экран [41]
Mobile People Talks #6: WWDC 2019 [42]
AppsCast #8: Flutter, руководство для начинающих [43]
Podlodka #116: Servant Leadership [44]
25 примеров темного дизайна [45]
Начинаем работу с дизайн-системой [46]
Maginary. История создания магической книги с цифрами и инсайтами [47]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 27 Как начать программировать, когда вам за 30 [48]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 28 SoundCloud: придумываем новый UX [49]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 29 Моя страна хочет отказаться от наличных, так что я сделал дизайн электронного кошелька [50]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 30 7 навыков эффективных программистов [51]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 31 Интегрируем Firebase Cloud Functions с Google Calendar API [52]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 32 Мой опыт создания первой игры на libGDX [53]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 33 BookSwap: исследование UX [54]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 34 Envoy Mobile: сетевой уровень [55]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 35 React Native UI Kitten: красивые компоненты для React Native [56]

Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 36 Аналитика, маркетинг и монетизация

(+41) 40 лет адвергейминга — ретроспектива рекламных видеоигр [57]
(+9) Почему соревноваться лучше, чем зубрить: наш опыт геймификации обучения [58]
(+6) Чек-лист по ASO: как ничего не упустить [59]
Продвижение Age of Magic в Китае: кейс Mobvista [60]
Топовые издатели в App Store заработали на 65% больше [61]
Top Keywords: самые популярные поисковые запросы App Store и Google Play в разных странах [62]
Rec Room: виртуальные комнаты [63]
Стек ASO 2019 [64]
В AppMetrica появились отчеты для отслеживания доходов приложения [65]
Как длина описания в Google Play влияет на конверсию в установки [66]
Wargaming открывает новое подразделение Nexus [67]
Как измерять, контролировать и поддерживать органический рост [68]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 37 FYI: шаблоны документов [69]

Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 38 AI, Устройства, IoT

(+32) Перспективные AR/VR-стартапы: виртуальные свидания, хирургия и служба поддержки [70]
(+25) Несем IoT в массы: результаты первого IoT-хакатона от GeekBrains и Ростелекома [71]
(+21) Нейросети и глубокое обучение: онлайн-учебник, глава 1 [72]
(+17) Интернет вещей по-русски. Baseband-отель LoRaWAN для владельцев RTL-SDR [73]
(+12) Прототипирование в VR: 5 способов проверить гипотезу [74]
Facebook выпустил фреймворк для роботов PyRobot [75]
Дайджест интересных материалов для мобильного разработчика #303 (17 — 23 июня) - 39 Python играет в Counter Strike GO [76]

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

Автор: DigitalEcosystems

Источник [79]


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

Путь до страницы источника: https://www.pvsm.ru/razrabotka-pod-ios/321697

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

[1] От UI-kit до дизайн-системы: https://habr.com/ru/company/ivi/blog/456854/

[2] Деливерим фичи быстрее. Опыт Android-разработки в Badoo: https://habr.com/ru/company/badoo/blog/456106/

[3] мышления: http://www.braintools.ru

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

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

[6] Адаптивный дизайн приложения под каждого пользователя: https://habr.com/ru/post/457154/

[7] Руководство по реализации авто-возобновляемых подписок в iOS-приложениях: https://habr.com/ru/post/456602/

[8] Три видео для тех, кто пишет под iOS: https://habr.com/ru/company/yamoney/blog/457060/

[9] Изучая Dependency Injection: https://habr.com/ru/post/456588/

[10] Emoji в интерфейсе iOS приложения и требования Apple: https://habr.com/ru/post/456542/

[11] Архитектурный шаблон «Строитель» во вселенной Swift и iOS/macOS: https://habr.com/ru/post/457086/

[12] Спокойствие спокойствию рознь: https://habr.com/ru/post/457188/

[13] iOS 13 будет предупреждать об удалении приложений с активной подпиской: https://apptractor.ru/info/news/ios-13-alert.html

[14] Сканирование документов с Vision и VisionKit в iOS 13: https://schiavo.me/2019/scanning-documents/

[15] Я позволил моему iOS-проекту превратиться в хаос: https://medium.com/night-shift/i-let-my-ios-project-turn-into-chaos-fe52c8a73e14

[16] Как сделать чат-приложение на SwiftUI: https://blog.usejournal.com/how-to-build-a-chat-app-or-messenger-in-swiftui-for-ios-swift-b46dbe5cc0ab

[17] Просмотр WWDC: разговор с бывшим руководителем Apple по апруву приложений: https://open.spotify.com/episode/2XCkXQwLeG608fMVf8uT8g

[18] Привет, Combine: https://arvindravi.com/hello-combine-part-i/

[19] Почему iOS-разработчики чувствуют себя остановившимися в развитии и что делать: https://medium.com/essential-developer-ios/why-ios-developers-feel-stuck-in-their-careers-what-to-do-d800a50470a2

[20] Создаем формы на SwiftUI: https://mecid.github.io/2019/06/19/building-forms-with-swiftui/

[21] Добавляем Swift Package Dependency в iOS-проект с Xcode 11: https://medium.com/better-programming/add-swift-package-dependency-to-an-ios-project-with-xcode-11-remote-local-public-private-3a7577fac6b2

[22] Как удаление Swift-кода может сделать вас более ценным iOS-разработчиком: https://medium.com/essential-developer-ios/how-deleting-swift-code-can-make-you-a-more-valuable-ios-developer-clean-ios-codebase-series-7b509b04e801

[23] iOS 13 против Android Q: кто завоюет рынок?: https://techhype.io/?story=ios-13-vs-android-q-which-os-will-steal-the-market-ripenapps

[24] Weather: погода и SwiftUI: https://t.me/applib/38

[25] Современный подход к конкурентности в Android: корутины в Kotlin: https://habr.com/ru/company/piter/blog/457224/

[26] Google отказался от планшетов: https://apptractor.ru/info/devices/google-pad.html

[27] Создаем приложение для блокирования экрана Android: https://medium.com/@ssaurel/creating-a-lock-screen-device-app-for-android-4ec6576b92e0

[28] Пример Чистой архитектуры с Kotlin Multiplatform: https://proandroiddev.com/clean-architecture-example-with-kotlin-multiplatform-c361bb283fd0

[29] Что ожидать от публикации первого приложения: https://medium.com/swlh/what-to-expect-when-youre-expecting-to-publish-your-1st-android-app-a135bf973bd9

[30] Отзыв с одной звездой: https://medium.com/swlh/the-1-star-android-app-review-b2892756925f

[31] Поисковый фильтр на Recycler View: https://android.jlelse.eu/search-on-recycler-view-android-e7661479481

[32] Android Fragments: общие запросы и ошибки: https://medium.com/better-programming/android-fragments-common-queries-mistakes-1c42e9f6b44f

[33] Объяснение Android ConstraintLayout с помощью сложного UI: https://medium.com/better-programming/android-constraintlayout-explained-using-a-complex-ui-861c92479c90

[34] Используем материальные темы в кастомном View: https://slideslive.com/38916547/incorporating-material-theming-into-custom-views

[35] Как мобильное приложение помогает студенту с проблемами со зрением передвигаться по Москве: https://habr.com/ru/company/microsoft/blog/456210/

[36] Восемь именных законов в UX дизайне (часть 2): https://habr.com/ru/company/dbtc/blog/456680/

[37] Упрощаем рисование Enum Flags в Unity: https://habr.com/ru/post/456852/

[38] Эволюция разработчиков: каких игр нам ждать в будущем: https://habr.com/ru/post/457074/

[39] 4 трудности при локализации мобильных игр на примере Fishing Clash: https://habr.com/ru/post/456768/

[40] Безопасные push-уведомления: от теории к практике: https://habr.com/ru/post/456902/

[41] RectTransformUtility, или как сделать компонент, который анимированно сдвигает элементы UI за экран: https://habr.com/ru/post/457142/

[42] Mobile People Talks #6: WWDC 2019: https://apptractor.ru/info/media/mobile-people-talks-6.html

[43] AppsCast #8: Flutter, руководство для начинающих: https://apptractor.ru/info/media/appscast-8.html

[44] Podlodka #116: Servant Leadership: https://apptractor.ru/info/media/podlodka-116.html

[45] 25 примеров темного дизайна: https://apptractor.ru/info/articles/dark-ui.html

[46] Начинаем работу с дизайн-системой: https://apptractor.ru/info/media/ebook-design-systems.html

[47] Maginary. История создания магической книги с цифрами и инсайтами: https://gopractice.ru/maginary/

[48] Как начать программировать, когда вам за 30: https://blog.klimczyk.pl/posts/2019/06/starting-programming-after-30

[49] SoundCloud: придумываем новый UX: https://blog.prototypr.io/soundcloud-a-ux-design-case-study-ae259309bcaf

[50] Моя страна хочет отказаться от наличных, так что я сделал дизайн электронного кошелька: https://uxdesign.cc/my-country-wants-to-go-cashless-so-i-redesigned-a-digital-wallet-dbs-paylah-140fed1a81cb

[51] 7 навыков эффективных программистов: https://medium.com/better-programming/7-habits-of-highly-effective-programmers-563ee3b63f33

[52] Интегрируем Firebase Cloud Functions с Google Calendar API: https://medium.com/@smccartney09/integrating-firebase-cloud-functions-with-google-calendar-api-9a5ac042e869

[53] Мой опыт создания первой игры на libGDX: https://medium.com/swlh/my-experience-creating-my-first-libgdx-game-985dbbc26724

[54] BookSwap: исследование UX: https://medium.muz.li/bookswap-ui-ux-case-study-e3209cb69783

[55] Envoy Mobile: сетевой уровень: https://t.me/applib/39

[56] React Native UI Kitten: красивые компоненты для React Native: https://apptractor.ru/info/github/react-native-ui-kitten.html

[57] 40 лет адвергейминга — ретроспектива рекламных видеоигр: https://habr.com/ru/company/pixonic/blog/456572/

[58] Почему соревноваться лучше, чем зубрить: наш опыт геймификации обучения: https://habr.com/ru/post/456400/

[59] Чек-лист по ASO: как ничего не упустить: https://habr.com/ru/company/digital-ecosystems/blog/456886/

[60] Продвижение Age of Magic в Китае: кейс Mobvista: https://apptractor.ru/marketing-monetization/age-of-magic.html

[61] Топовые издатели в App Store заработали на 65% больше: https://apptractor.ru/measure/app-store-analytics/average-publisher-revenue.html

[62] Top Keywords: самые популярные поисковые запросы App Store и Google Play в разных странах: https://apptractor.ru/marketing-monetization/app-store-optimization/top-keywords.html

[63] Rec Room: виртуальные комнаты: https://apptractor.ru/info/techhype/rec-room.html

[64] Стек ASO 2019: https://apptractor.ru/info/news/aso-stack-2019.html

[65] В AppMetrica появились отчеты для отслеживания доходов приложения: https://apptractor.ru/measure/user-analytics/appmetrica-arpu.html

[66] Как длина описания в Google Play влияет на конверсию в установки: https://apptractor.ru/marketing-monetization/app-promo/google-play-text.html

[67] Wargaming открывает новое подразделение Nexus: https://apptractor.ru/info/news/wargaming-nexus.html

[68] Как измерять, контролировать и поддерживать органический рост: https://apptractor.ru/info/media/organic-growth.html

[69] FYI: шаблоны документов: https://t.me/applib/41

[70] Перспективные AR/VR-стартапы: виртуальные свидания, хирургия и служба поддержки: https://habr.com/ru/company/mailru/blog/339686/

[71] Несем IoT в массы: результаты первого IoT-хакатона от GeekBrains и Ростелекома: https://habr.com/ru/company/mailru/blog/456930/

[72] Нейросети и глубокое обучение: онлайн-учебник, глава 1: https://habr.com/ru/post/456738/

[73] Интернет вещей по-русски. Baseband-отель LoRaWAN для владельцев RTL-SDR: https://habr.com/ru/post/455547/

[74] Прототипирование в VR: 5 способов проверить гипотезу: https://habr.com/ru/company/netologyru/blog/456974/

[75] Facebook выпустил фреймворк для роботов PyRobot: https://apptractor.ru/develop/pyrobot.html

[76] Python играет в Counter Strike GO: https://medium.com/@saikia.hrishi321/python-plays-counter-strike-go-part-1-88f24c4d2f3

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

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

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