В новой подборке знакомимся с async/await и запускаем первые тесты, делаем первый аккорд в Jetpack Compose и сравниваем его со SwiftUI, участвуем в чемпионатах и решаем проблемы склада с помощью приложения. Все это и многое другое в нашем новом дайджесте!
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• Знакомимся с async/await в Swift
• Диспетчеризация в main thread с помощью MainActor
• Уязвимости в iOS
• Apple будет определять в фотографиях пользователей «чувствительный контент»
• Apple продвигала в подборках App Store мошеннические приложения
• Как загружать изображения параллельно со Swift Concurrency
• Кричащая архитектура для iOS-проектов
• Добавление нескольких проектов в один проект Xcode
• Внедрение зависимостей SwiftUI с использованием фреймворка Uber Needle
• Пишите лучший код на Swift с помощью With()
• Swift — let против var
• 7 способов связать представления SwiftUI со сценой SpriteKit
• Программный AutoLayout в MVVM
• CardNavigation: навигация карточками
• Clean Architecture SwiftUI: чистая архитектура и SwiftUI
• SwiftUI Stock Charts: интерактивные графики
Android
• Kaspresso tutorials. Часть 1. Запуск первого теста
• Как я познал «Гармонию» и попробовал программировать на устройстве для иллюстраторов
• Accompanist — первый аккорд. Обзор библиотеки для Jetpack Compose
• Android in-app purchases, часть 2: инициализация и обработка покупок
• Словарь терминов Jetpack Compose
• Туториал по Android Sleep API: начало работы
• Как сделать server-driven строку на Kotlin в Android?
• Атомарные обновления на MutableStateFlow
• Что такое FragmentContainerView? Его преимущества перед FrameLayout
• Google Play Asset Delivery в Android
• Переписываем приложения AOSP календаря на Kotlin
• Понимаем Reflection с помощью Kotlin
• Как приложение OkCredit ускорило холодный запуск на 70%
• • Анимации в Navigation Compose
• Лучшие Android MVI библиотеки в 2021
• Compose Richtext: работа с текстом в Compose
• Pluto: on-device отладчик для Android
Разработка
• Потратить время сейчас, чтобы сэкономить потом: как мы выстраивали процессы разработки и планирования на игровом проекте
• Из Unity в Godot. Первое впечатление
• Как боты помогают тестировать игры
• Как сделать Swift-friendly API с Kotlin Multiplatform Mobile
• Грешка, заблуда и буболечка, или как я погружалась в мобильное тестирование болгарского банка
• Flutter + Socket.io — Обмен информацией в режиме реального времени
• Flutter: открытие виджетов ключами
• Firebase Test Lab. Авто-тесты без кода на физических устройствах
• Podlodka #227: статический анализ кода
• SwiftUI против Jetpack Compose: почему Android выигрывает не напрягаясь
• Дизайн приложений: примеры для вдохновения #51
• Почему программистам не надо надолго оставаться в одной компании
• Разрабатываем с Firebase
• Mail.ru Group открывает набор на бесплатные курсы по мобильной разработке
• Вышла альфа-версия Compose Multiplatform
• Stack Overflow опубликовал результаты ежегодного опроса разработчиков
• X5 проводит ИТ-чемпионат
• Открыта регистрация на чемпионате по программированию Yandex Cup
• Чему я научилась, работая Продуктовым Менеджером в Google
• Хорошие и плохие продуктовые дизайнеры
• Как мы решили комплексные проблемы склада Lamoda всего одним приложением
• Можете ли вы объяснить свой код?
• Библиотеки React Native для «нативных функций»
• 7 побочных проектов, приносящих прибыль, которые вы можете реализовать как разработчик
• Изучите эти 9 правил, чтобы сразу же начать писать чистый код
• 5 практик чистого кода для каждого программного проекта
• Учимся создавать таббары у TikTok, Youtube, Pinterest, Spotify, Instagram, Slack, Duolingo и пр.
• Повышаем производительности React Native приложения
• 12 навыков высокоэффективных разработчиков
• Нет, 10x разработчики не легенды и у них нет сверхспособностей
• Действительно ли карьера разработчиков заканчивается в 35 лет?
• Глассморфизм? Как создать UI с эффектом неонового стекла
• 9 техник Code Review, которым должен следовать каждый программист
• Как правильно хранить пароли в базе данных
Аналитика, маркетинг и монетизация
• Elude: куда съездить с имеющимся бюджетом
• MY.GAMES Venture Capital и Google запустили второй сезон Game Drive
• Match Group добавляет аудио и видео чаты в свои приложения
• NetEase и SocialPeta начали стратегическое сотрудничество в области креативов для мобильных игр
• Как работает Content Team в Wowmaking
• Novakid привлек $35 млн на изучение английского детьми
• «Справочник по мобильному росту 2021» от Branch
• Adjust начинает сотрудничество с Salesforce Marketing Cloud
• Inshorts: локальные видео новости
• Louis Vuitton выпускает игру с NFT
• Высококачественные креативы помогают китайским игровым компаниям привлекать пользователей по всему миру
• Фреймворк Google Heart для продуктовых метрик
• Книга навыков продукт-менеджмента
AI, Устройства, IoT
• Киберпанк, который мы заслужили, или как Prisma превращает ваши селфи в произведение искусства
• Распознавание блюд в кафетерии банка
• Google показал Pixel 6 и Pixel 6 Pro
• Работа на Amiga в 2021 году
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• Знакомимся с async/await в Swift
• Диспетчеризация в main thread с помощью MainActor
• Уязвимости в iOS
• Apple будет определять в фотографиях пользователей «чувствительный контент»
• Apple продвигала в подборках App Store мошеннические приложения
• Как загружать изображения параллельно со Swift Concurrency
• Кричащая архитектура для iOS-проектов
• Добавление нескольких проектов в один проект Xcode
• Внедрение зависимостей SwiftUI с использованием фреймворка Uber Needle
• Пишите лучший код на Swift с помощью With()
• Swift — let против var
• 7 способов связать представления SwiftUI со сценой SpriteKit
• Программный AutoLayout в MVVM
• CardNavigation: навигация карточками
• Clean Architecture SwiftUI: чистая архитектура и SwiftUI
• SwiftUI Stock Charts: интерактивные графики
Android
• Kaspresso tutorials. Часть 1. Запуск первого теста
• Как я познал «Гармонию» и попробовал программировать на устройстве для иллюстраторов
• Accompanist — первый аккорд. Обзор библиотеки для Jetpack Compose
• Android in-app purchases, часть 2: инициализация и обработка покупок
• Словарь терминов Jetpack Compose
• Туториал по Android Sleep API: начало работы
• Как сделать server-driven строку на Kotlin в Android?
• Атомарные обновления на MutableStateFlow
• Что такое FragmentContainerView? Его преимущества перед FrameLayout
• Google Play Asset Delivery в Android
• Переписываем приложения AOSP календаря на Kotlin
• Понимаем Reflection с помощью Kotlin
• Как приложение OkCredit ускорило холодный запуск на 70%
• • Анимации в Navigation Compose
• Лучшие Android MVI библиотеки в 2021
• Compose Richtext: работа с текстом в Compose
• Pluto: on-device отладчик для Android
Разработка
• Потратить время сейчас, чтобы сэкономить потом: как мы выстраивали процессы разработки и планирования на игровом проекте
• Из Unity в Godot. Первое впечатление
• Как боты помогают тестировать игры
• Как сделать Swift-friendly API с Kotlin Multiplatform Mobile
• Грешка, заблуда и буболечка, или как я погружалась в мобильное тестирование болгарского банка
• Flutter + Socket.io — Обмен информацией в режиме реального времени
• Flutter: открытие виджетов ключами
• Firebase Test Lab. Авто-тесты без кода на физических устройствах
• Podlodka #227: статический анализ кода
• SwiftUI против Jetpack Compose: почему Android выигрывает не напрягаясь
• Дизайн приложений: примеры для вдохновения #51
• Почему программистам не надо надолго оставаться в одной компании
• Разрабатываем с Firebase
• Mail.ru Group открывает набор на бесплатные курсы по мобильной разработке
• Вышла альфа-версия Compose Multiplatform
• Stack Overflow опубликовал результаты ежегодного опроса разработчиков
• X5 проводит ИТ-чемпионат
• Открыта регистрация на чемпионате по программированию Yandex Cup
• Чему я научилась, работая Продуктовым Менеджером в Google
• Хорошие и плохие продуктовые дизайнеры
• Как мы решили комплексные проблемы склада Lamoda всего одним приложением
• Можете ли вы объяснить свой код?
• Библиотеки React Native для «нативных функций»
• 7 побочных проектов, приносящих прибыль, которые вы можете реализовать как разработчик
• Изучите эти 9 правил, чтобы сразу же начать писать чистый код
• 5 практик чистого кода для каждого программного проекта
• Учимся создавать таббары у TikTok, Youtube, Pinterest, Spotify, Instagram, Slack, Duolingo и пр.
• Повышаем производительности React Native приложения
• 12 навыков высокоэффективных разработчиков
• Нет, 10x разработчики не легенды и у них нет сверхспособностей
• Действительно ли карьера разработчиков заканчивается в 35 лет?
• Глассморфизм? Как создать UI с эффектом неонового стекла
• 9 техник Code Review, которым должен следовать каждый программист
• Как правильно хранить пароли в базе данных
Аналитика, маркетинг и монетизация
• Elude: куда съездить с имеющимся бюджетом
• MY.GAMES Venture Capital и Google запустили второй сезон Game Drive
• Match Group добавляет аудио и видео чаты в свои приложения
• NetEase и SocialPeta начали стратегическое сотрудничество в области креативов для мобильных игр
• Как работает Content Team в Wowmaking
• Novakid привлек $35 млн на изучение английского детьми
• «Справочник по мобильному росту 2021» от Branch
• Adjust начинает сотрудничество с Salesforce Marketing Cloud
• Inshorts: локальные видео новости
• Louis Vuitton выпускает игру с NFT
• Высококачественные креативы помогают китайским игровым компаниям привлекать пользователей по всему миру
• Фреймворк Google Heart для продуктовых метрик
• Книга навыков продукт-менеджмента
AI, Устройства, IoT
• Киберпанк, который мы заслужили, или как Prisma превращает ваши селфи в произведение искусства
• Распознавание блюд в кафетерии банка
• Google показал Pixel 6 и Pixel 6 Pro
• Работа на Amiga в 2021 году
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.