В нашем новом еженедельном дайджесте путь от игрушек на Objective-C к реальным проектам на Swift, опыт масштабирования Airbnb, автоматизация без посредников, квадратный колобок, ведение семейных финансов, главные медиаисточники мобильной рекламы и многое другое!
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• Как я прошел путь от игрушек на Objective-C к реальным проектам на Swift в большой компании
• Повышения производительности в крупномасштабном iOS-приложении: опыт Airbnb
• Paddle предлагает свою систему оплаты IAP в iOS
• В аналитике App Store Connect появились новые метрики
• Удаление учетных записей в iOS-приложениях станет обязательным с 2022 года
• Apple упрощает отправку сообщений о мошенничестве в App Store
• Apple выпустит новые MacBook Pro в этом году
• Как приложения для iPad адаптируются к новому iPad Mini с диагональю 8.3 дюйма
• Туториал по Multipeer Connectivity
• Как автоматизировать управление ассетами в iOS-приложениях
• Работа с Picker в SwiftUI
• Анимация SwiftUI Canvas в iOS 15
• Как Sendable может предотвратить гонку данных в iOS
• GitHub Contribution Graphs for iOS: виджет GitHub для iOS
• Swift Style Guide: ясность, последовательность и краткость Swift
Android
• Дублирование кода и неконсистентность дизайна: ищем решение
• C#: Автоматизация Android без посредников (adb)
• Локализация Android-приложений: о чем умалчивает документация
• Запись звука и отображение громкости на Android
• Делаем на Android анимацию как в Doom. Приложение-огонь
• Глобальный ренейминг в Android-проекте
• Функциональный подход в Jetpack Compose: каррирование функций
• Kotlin Symbol Processing. Работаем с аннотациями по-новому
• Android, Kotlin Flow во ViewModel — все сложно
• Иммитация игры Just Pop It
• Apollo 3.0 для работы с GraphQL в многомодульном Android приложении
• Android 12 опубликован в AOSP
• Вопросы и ответы по Android Game Development Kit
• Наполненная архитектура: рефакторинг Headspace для масштабирования
• Как использовать Android Activity Result API для выбора и съемки изображений
• Вопросы собеседования для Android-разработчика
• Синхронизируем RecyclerView с TabLayout
• Уместите ваше Android-приложение на любом экране
• Понимаем операторы as T? и as? T в Kotlin
• Адресное ТВ
• Анимация списка в Compose: перетащите, чтобы изменить порядок
• 7 вещей, которые вам следует узнать перед использованием Compose
• Шпаргалка по Kotlin-интервью
• Воспроизведение видео в LazyColumn в Jetpack Compose
• Как обои Android могут угрожать вашей конфиденциальности
• Android Runtime Permissions с корутинами
• SSComposeCookBook: поваренная книга Compose
• SplitButton: кнопка-меню для Android
Разработка
• Квадратный колобок: еще раз про UX в ритейле
• Написать книгу за год — мечта или реальность?
• Как я портировал игру с VisualBasic 6 на С++, сделав её кросс-платформенной
• Ведение семейных финансов на C# и Xamarin. Личный опыт
• Разработка Unity плагинов для iOS и Android
• Упрощённые рейкасты в Unity
• Переход на Swift UI и React Native: как за 3 месяца запустить новое приложение, быстро набравшее популярность
• Советы по оптимизации производительности растрового потока
• Нижняя панель навигации Flutter с вложенной маршрутизацией (автомаршрутизация)
• Как мы обновляли мобильное приложение для официантов: трудности перевода стека KMM + UI на Flutter из теста в продакшн
• PWA: управление service-worker'ом
• Podlodka #236: ВУЗы и IT-компании
• Дизайн приложений: примеры для вдохновения #59
• Стартует седьмой «Технокубок», олимпиада по программированию для школьников
• Падение Facebook увеличило производительность разработчиков на 32%
• В графовые базы данных Memgraph инвестировали $9.34 млн
• Environments-as-a-service платформа ReleaseHub получила $20 млн
• Книги Infrastructure and Ops в Humble Bundle
• 5 ошибок разработчика, которые я сделал за 15 лет карьеры
• CodeSee визуализирует базу кода
• Учимся проектировать Bottom Sheets на примерах Vimeo, Dropbox, Youtube и т.д.
• 3 рекомендации по проектированию пустых состояний в сложных приложениях
• Современный дизайн утратил душу
• Как сделать свою ферму в Unity
• 4 языка программирования, которые я собираюсь освоить в 2022 году, и почему вам тоже стоит это сделать
• 5 советов при работе с мобильным приложением для миллионов пользователей
• Как развить свои инженерную креативность
• Rust и кроссплатформенная мобильная разработка
• Полное руководство разработчика программного обеспечения по качеству кода
• Инструменты о которых вы не знали, но которые нужны вам для разработки
• Полюбите проблему, а не решение
• LongPressDraggable во Flutter
• Как повысить производительность React Native приложения
• Orbit Multiplatform: MVI фреймворк для Kotlin
Аналитика, маркетинг и монетизация
• Анализ такой анализ. Часть 1
• Предустановка приложений в России не дала существенного роста
• Twitter продает MoPub компании AppLovin
• AppsFlyer: расходы потребителей в приложениях для ритейла в России выросли на 227%
• Как за месяц получить 80 тыс. конверсий в установку игры с помощью видеорекламы: кейс AdQuantum
• Ведущие медиаисточники мобильной рекламы в интерактивном отчете Partner Benchmark от Adjust
• Apple заработала на играх больше, чем Sony, Nintendo, Microsoft и Activision вместе взятые
• ProductWind: инфлюэнсеры как сервис
AI, Устройства, IoT
• Few-shot-learning и другие страшные слова в классификации текстов
• Мы опубликовали модель, расставляющую знаки препинания и заглавные буквы в тексте на четырех языках
• Мигаем светодиодом по протоколу Zigbee или модуль управления Триколор GS SMH-ZW-I1 с прошивкой PTVO
• WIZnet представила новинку WIZnet Ethernet HAT для Raspberry Pi Pico
• OTA обновление устройств с Linux
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• Как я прошел путь от игрушек на Objective-C к реальным проектам на Swift в большой компании
• Повышения производительности в крупномасштабном iOS-приложении: опыт Airbnb
• Paddle предлагает свою систему оплаты IAP в iOS
• В аналитике App Store Connect появились новые метрики
• Удаление учетных записей в iOS-приложениях станет обязательным с 2022 года
• Apple упрощает отправку сообщений о мошенничестве в App Store
• Apple выпустит новые MacBook Pro в этом году
• Как приложения для iPad адаптируются к новому iPad Mini с диагональю 8.3 дюйма
• Туториал по Multipeer Connectivity
• Как автоматизировать управление ассетами в iOS-приложениях
• Работа с Picker в SwiftUI
• Анимация SwiftUI Canvas в iOS 15
• Как Sendable может предотвратить гонку данных в iOS
• GitHub Contribution Graphs for iOS: виджет GitHub для iOS
• Swift Style Guide: ясность, последовательность и краткость Swift
Android
• Дублирование кода и неконсистентность дизайна: ищем решение
• C#: Автоматизация Android без посредников (adb)
• Локализация Android-приложений: о чем умалчивает документация
• Запись звука и отображение громкости на Android
• Делаем на Android анимацию как в Doom. Приложение-огонь
• Глобальный ренейминг в Android-проекте
• Функциональный подход в Jetpack Compose: каррирование функций
• Kotlin Symbol Processing. Работаем с аннотациями по-новому
• Android, Kotlin Flow во ViewModel — все сложно
• Иммитация игры Just Pop It
• Apollo 3.0 для работы с GraphQL в многомодульном Android приложении
• Android 12 опубликован в AOSP
• Вопросы и ответы по Android Game Development Kit
• Наполненная архитектура: рефакторинг Headspace для масштабирования
• Как использовать Android Activity Result API для выбора и съемки изображений
• Вопросы собеседования для Android-разработчика
• Синхронизируем RecyclerView с TabLayout
• Уместите ваше Android-приложение на любом экране
• Понимаем операторы as T? и as? T в Kotlin
• Адресное ТВ
• Анимация списка в Compose: перетащите, чтобы изменить порядок
• 7 вещей, которые вам следует узнать перед использованием Compose
• Шпаргалка по Kotlin-интервью
• Воспроизведение видео в LazyColumn в Jetpack Compose
• Как обои Android могут угрожать вашей конфиденциальности
• Android Runtime Permissions с корутинами
• SSComposeCookBook: поваренная книга Compose
• SplitButton: кнопка-меню для Android
Разработка
• Квадратный колобок: еще раз про UX в ритейле
• Написать книгу за год — мечта или реальность?
• Как я портировал игру с VisualBasic 6 на С++, сделав её кросс-платформенной
• Ведение семейных финансов на C# и Xamarin. Личный опыт
• Разработка Unity плагинов для iOS и Android
• Упрощённые рейкасты в Unity
• Переход на Swift UI и React Native: как за 3 месяца запустить новое приложение, быстро набравшее популярность
• Советы по оптимизации производительности растрового потока
• Нижняя панель навигации Flutter с вложенной маршрутизацией (автомаршрутизация)
• Как мы обновляли мобильное приложение для официантов: трудности перевода стека KMM + UI на Flutter из теста в продакшн
• PWA: управление service-worker'ом
• Podlodka #236: ВУЗы и IT-компании
• Дизайн приложений: примеры для вдохновения #59
• Стартует седьмой «Технокубок», олимпиада по программированию для школьников
• Падение Facebook увеличило производительность разработчиков на 32%
• В графовые базы данных Memgraph инвестировали $9.34 млн
• Environments-as-a-service платформа ReleaseHub получила $20 млн
• Книги Infrastructure and Ops в Humble Bundle
• 5 ошибок разработчика, которые я сделал за 15 лет карьеры
• CodeSee визуализирует базу кода
• Учимся проектировать Bottom Sheets на примерах Vimeo, Dropbox, Youtube и т.д.
• 3 рекомендации по проектированию пустых состояний в сложных приложениях
• Современный дизайн утратил душу
• Как сделать свою ферму в Unity
• 4 языка программирования, которые я собираюсь освоить в 2022 году, и почему вам тоже стоит это сделать
• 5 советов при работе с мобильным приложением для миллионов пользователей
• Как развить свои инженерную креативность
• Rust и кроссплатформенная мобильная разработка
• Полное руководство разработчика программного обеспечения по качеству кода
• Инструменты о которых вы не знали, но которые нужны вам для разработки
• Полюбите проблему, а не решение
• LongPressDraggable во Flutter
• Как повысить производительность React Native приложения
• Orbit Multiplatform: MVI фреймворк для Kotlin
Аналитика, маркетинг и монетизация
• Анализ такой анализ. Часть 1
• Предустановка приложений в России не дала существенного роста
• Twitter продает MoPub компании AppLovin
• AppsFlyer: расходы потребителей в приложениях для ритейла в России выросли на 227%
• Как за месяц получить 80 тыс. конверсий в установку игры с помощью видеорекламы: кейс AdQuantum
• Ведущие медиаисточники мобильной рекламы в интерактивном отчете Partner Benchmark от Adjust
• Apple заработала на играх больше, чем Sony, Nintendo, Microsoft и Activision вместе взятые
• ProductWind: инфлюэнсеры как сервис
AI, Устройства, IoT
• Few-shot-learning и другие страшные слова в классификации текстов
• Мы опубликовали модель, расставляющую знаки препинания и заглавные буквы в тексте на четырех языках
• Мигаем светодиодом по протоколу Zigbee или модуль управления Триколор GS SMH-ZW-I1 с прошивкой PTVO
• WIZnet представила новинку WIZnet Ethernet HAT для Raspberry Pi Pico
• OTA обновление устройств с Linux
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
antirek
может вы видели или знаете html-ui фреймворк или компоненты в каком либо фреймворке на react или vue для создания чатов: сообщений, картинок с превью, проигрывания в сообщения видео и аудиозаписей?
например, использую quasar (фреймворкк на vue, quasar собирает мобильное приложение под android/ios), там есть простейшее chat message компонент. для текстового обмена сообщениями - вполне, но хочется мультимедиа. и поддержку в компоненте отображения reply сообщения