Маркетинг и монетизация
Мобильная разработка за неделю #500: непроизвольная тирания адаптивных макетов
В новом дайджесте разбираем основы iOS-разработки в Revolut и оцениваем финалистов Apple Design Award 2024, обновляем адаптивные макеты на примерах с I/O и продолжаем ставить на Flutter, тираним пользовательские интерфейсы, катим MobAIle-разработку, делаем кондиционер умным и многое другое. Подключайтесь!
Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
- Как сделать мобильные приложения, которые приносят $3,000 в день
- Основы iOS-разработки в Revolut
- Разбираемся с типографикой в visionOS
- Стэнфордский курс CS193P “Разработка iOS приложений в SwiftUI” Весна 2023: русскоязычный конспект с адаптацией к iOS 17
- SwiftUI уроки (часть 13)
- Pедактор цен для iOS подписок
- Поваренная книга SwiftUI: изображения и иконки — Часть 2
- Как писать игры на Swift для Playdate
- Мок-собеседование iOS-разработчика. SwiftUI (+ все собеседования)
- Макросы Swift: проще, чище, быстрее
- Мы решили все проблемы работы в модульном проекте. Хотите так же?
- Siri получит обширные знания для запуска отдельных функций приложений
- Финалисты Apple Design Award 2024
- How Do You Know Whether or Not SwiftUI Previews and Preview Content Are Excluded From App Store Builds?
- Tricking iOS Into Animating App Icons
- This is what peak UIKit looks like
- Your Complete Guide to Push Notifications in SwiftUI
- How to build segmented circular progress views in SwiftUI with Swift Charts
- Apple rich text fundamentals
- How to create custom @Environment values in SwiftUI
- Slowly migrating from Objective-C to Swift
- @preconcurrency usage in Swift explained
- Save Data in Your Swift App with PropertyListEncoder
- Selective Unit Testing on iOS: Achieve %80 Faster Feedback
- Observation Framework for SwiftUI
- A Guide to High-Performance Networking
- Flip Clock Text Effect — SwiftUI
- Expandable Search Bar using SwiftUI
- Hacker Text Effect using SwiftUI
- Spotlight your app with App Shortcuts
- Update Live Activities with push notifications
- Discover Calendar and EventKit
- Create a great ShazamKit experience
- How to cache the result of API calls (using NSCache)
- Sword — инъекция зависимостей во время компиляции
- DeskPad — виртуальный монитор для шаринга экрана
Android
- Обновления в адаптивных макетах Compose с I/O
- Разработка новостного приложения. Часть 7. Загрузка в Google Play
- Разработка новостного приложения. Часть 6. Что я сделал не так
- Оптимизация Compose: проблемы, опыт, тактика, стратегия
- Google Bets on Kotlin Multiplatform: Koin Leads for Android & KMP
- Injecting Composables with Dagger without losing it
- Caching Strategies in Android
- KotlinConf 2024 announcements
- Change App Theme — Personalizing Accessibility
- A Developer’s Roadmap to Predictive Back (Views)
- App Architecture: JUnit Tests
- Compose UI Test and Preview Hacks!
- Kotlin Mobile Monorepo
- Annoying problems with Android projects
- The on-device Vector Database for Android and Java
- Securing the Future: Navigating the Deprecation of Encrypted Shared Preferences
- My Story of Getting Scammed and Losing My Google Play Console Account
- 7 Android Studio Usage Tips
- Crafting Custom 3D Dialog Animation in Jetpack Compose
- Now in Android: 105 — I/O ‘24, Android 15, KMP, Compose, AndroidX, and more
- List + Detail Screens Just Got SO MUCH Easier — NavigableListDetailPaneScaffold
- Building an Android Video Calling App With the Stream SDK
- Mastering Feature Flags: Best Practices with Firebase Remote Config
- The Essence of Coroutines
- Blueprint — размеры Composable
- Compose Guard — плагин Gradle для обнаружения регрессий в Jetpack Compose
Кроссплатформа
- Почему я продолжаю ставить на Flutter
- Firebase Analytics в KMP: Android, iOS, Desktop (MacOS, Windows)
- 5 лет с Flutter: эволюция кроссплатформенности
- Flutter-диета. Как сбросить вес, выпиливая модули
- Migrating UI-oriented Android library to Compose Multiplatform
- The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform
- How BigPay Increased Flutter Developer Velocity
- These New Flutter/Dart Features Make My Life Easier
- From SQLDelight to Room in Kotlin Multiplatform Projects
- Building multiplatform games with Flutter
- Bringing Together: Jetpack Compose and Native iOS Components
- Can a backend engineer learn Flutter with AI?
Разработка
- Непроизвольная тирания пользовательских интерфейсов
- Куда катится MobAIle-разработка
- Как понять, что пора выпускать новое приложение вместо старого? Разбираем со стороны бизнеса
- Редизайн сервиса «Обмен валюты» в мобильном приложении ОТП Банка
- Профиль защиты ЦБ РФ и мобильные приложения: разбираемся, как соответствовать
- Mobius 2024 offline. День первый
- Прокачиваем Code Review: как выжать максимум?
- Пишем нативно под Аврора ОС как под iOS: Clean-архитектура, Coordinator и UDF
- Маргарита Лукина про Frontend, высшее образование, софт-скиллы и женщин в IT
- Observability, Profiling и Benchmarking как основа High Performance
- Три закона сложности программного обеспечения (или почему инженеры-программисты всегда грустные)
- В каком возрасте программисты создают новые языки?
- ChatGPT на вопросы по программированию дает 52% неправильных ответов
- Codestral — первая генеративная модель Mistral для кода
- Writing a Unix clone in about a month
- MobileLlama3: Run Llama3 locally on mobile
- Big Data is Dead
- Indexing all of Wikipedia, on a laptop
- AI-Friendly Programming Languages: the Kotlin Story
- Don’t DRY Your Code Prematurely
- Linear Algebra Course – Mathematics for Machine Learning and Generative AI
- Openpanel — альтернатива Mixpanel с открытым исходным кодом
Аналитика, маркетинг и монетизация
- Как оценить валидность A/B тестов. SRM и другие критерии
- Приложение Autobiographer использует ИИ, чтобы помочь вам рассказать историю своей жизни
- Supercell выпустила свою шестую игру — Squad Busters
- Мини-игры Playables стали доступны всем пользователям YouTube
- Алгоритмы, модели и пицца: как с помощью programmatic-рекламы эффективно привлекать и возвращать пользователей. Кейс «Додо Пиццы» и Bidease
- Why Duolingo’s Engagement Strategy Won’t Work For Every App — Asya Paloni, Welltory
AI, Устройства, IoT
- Делаем кондиционер умным с помощью Elixir и Nerves
- Обзор новых Open Source LLM. Или как локально запустить аналог ChatGPT
- Стеллажная система на 480 ярусов: как автоматизировать выращивание растений и не сойти с ума
- Запускаем .NET на RISC-V и разрабатываем IoT приложение для Sipeed Lichee RV
- Kincony KC868-A256: а ты готов к настоящему хоккею?
- Новый контроллер, облако, выключатели, DALI-шлюз и датчики присутствия от Wiren Board
- Как мы обуздали ПОТОК данных со сварочных аппаратов
- Проект хаба для “умного дома” с BLE-устройствами
- Avito Product meetup: ML-продукты
- Fitbit выпустил Ace LTE — умные часы/трекер для детей
- ИИ-репетиторы незаметно меняют подход к обучению детей
Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
-
Видео и подкасты для разработчиков1 месяц назад
Как решать задачи на Leetcode
-
Программирование1 месяц назад
Почему проверка типов в Swift работает медленно
-
Разработка1 месяц назад
Поваренная книга SwiftUI: изображения и иконки — Часть 4
-
Разработка1 месяц назад
Осваиваем ViewModel в Android: «можно» и «нельзя» — Часть 4