109 статей для Junior Mobile-разработчика: большая подборка
Материалы для старта в мобильной разработке: Android, iOS, Kotlin, Swift, Flutter, интерфейсы, API, локальные данные, тестирование и публикация.
Профессия и выбор платформы
- Приложение Хабра для Android и iOS
Чтобы выбрать подходящую платформу для разработки.
- Kotlin Multiplatform в мобильной разработке. Рецепты общего кода для Android и iOS
Чтобы выбрать подходящую платформу для разработки.
- Emcee — тест-раннер для запуска автотестов на Android и iOS: как работает, и какие проблемы помогает решить
Чтобы выбрать подходящую платформу для разработки.
- Обзор 7 самых популярных кроссплатформенных мобильных фреймворков
Чтобы выбрать подходящую платформу для разработки.
- Выход iOS 26. Почему нативная разработка — это преимущество и необходимость
Чтобы выбрать подходящую платформу для разработки.
- Автоматизация версионирования в Kotlin Multiplatform: Решение для Android и iOS
Чтобы выбрать подходящую платформу для разработки.
- Спасти проект: с какими трудностями мы столкнулись при разработке и поддержке мобильной кроссплатформы
Чтобы выбрать подходящую платформу для разработки.
- Наш опыт Android- и iOS-разработки в проекте
Чтобы выбрать подходящую платформу для разработки.
- Мобильное приложение для eCommerce: опыт кроссплатформенной разработки
Чтобы выбрать подходящую платформу для разработки.
- Как правильно переходить границу: кроссплатформенность в мобильном приложении
Чтобы выбрать подходящую платформу для разработки.
- Кроссплатформенная разработка для мобильных с Xamarin
Чтобы выбрать подходящую платформу для разработки.
- Dr. Tariff (3 месяца спустя) — подобрать тариф можно в 80 регионах России на Android и iOS
Чтобы выбрать подходящую платформу для разработки.
Android и Kotlin
- Производительность Android приложений Kotlin в сравнении с С++ или цена управления памятью
Чтобы создавать приложения для Android.
- Google I/O 2023. Что нового в Kotlin для Android?
Чтобы создавать приложения для Android.
- База данных на SharedPreferences — Android Kotlin
Чтобы создавать приложения для Android.
- От State к Event: как два sealed class закрывают архитектуру Android-экрана в Kotlin
Чтобы создавать приложения для Android.
- FCM для Android и Backend на Kotlin
Чтобы создавать приложения для Android.
- Как я писал суперкастомизированное Android-приложение в 2024 году
Чтобы создавать приложения для Android.
- Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке
Чтобы создавать приложения для Android.
- Kotlin vs. Java: скорость компиляции
Чтобы создавать приложения для Android.
- Пишем на Kotlin под Android
Чтобы создавать приложения для Android.
- Библиотека Scout — быстрый и безопасный DI на Kotlin
Чтобы создавать приложения для Android.
- Jetpack Compose — как легко построить UI на Android
Чтобы создавать приложения для Android.
- Стоп рефакторинг. Kotlin. Android
Чтобы создавать приложения для Android.
iOS и Swift
- Императивный UIKit vs Декларативный SwiftUI
Чтобы создавать приложения для iPhone и iPad.
- iOS 18 для разработчиков: Ключевые изменения в UIKit
Чтобы создавать приложения для iPhone и iPad.
- Swift Utilities — Интеграция SwiftUI в UIKit
Чтобы создавать приложения для iPhone и iPad.
- Как Swift Runtime влияет на производительность iOS-приложений
Чтобы создавать приложения для iPhone и iPad.
- Книга про разработку под iOS на русском: разбираем единственный актуальный учебник по SwiftUI
Чтобы создавать приложения для iPhone и iPad.
- Отслеживание утечек памяти в iOS-приложении со SwiftUI в Runtime
Чтобы создавать приложения для iPhone и iPad.
- Как Uber переписал приложение iOS на Swift
Чтобы создавать приложения для iPhone и iPad.
- Profile page как в TikTok/Instagram на UIKit (iOS 15+)
Чтобы создавать приложения для iPhone и iPad.
- Вызов защищенного API из iOS-приложения на Swift
Чтобы создавать приложения для iPhone и iPad.
- Книги по Swift и iOS-разработке для начинающих специалистов и профессионалов
Чтобы создавать приложения для iPhone и iPad.
- Как Swift работает с памятью: подробный гайд для разработчиков. Часть 1
Чтобы создавать приложения для iPhone и iPad.
- Готовый компонент UI свайп-панели c добавлением scrollView, и других элементов ui. (iOS Swift)
Чтобы создавать приложения для iPhone и iPad.
Flutter и React Native
- Native vs Flutter vs React Native: тестируем производительность в работе с UI-элементами
Чтобы собирать интерфейс из переиспользуемых компонентов.
- Flutter 3.41 — Что нового во Flutter?
Чтобы создавать интерфейсы из переиспользуемых компонентов.
- Сравнение React Native и Flutter с точки зрения их применения в реальных проектах
Чтобы собирать интерфейс из переиспользуемых компонентов.
- Flutter Add-to-App: как добавить Flutter в приложение
Чтобы создавать интерфейсы из переиспользуемых компонентов.
- React Native тормозит? Проверь эти 8 узких мест в производительности, прежде чем винить фреймворк [ЧЕК-ЛИСТ]
Чтобы собирать интерфейс из переиспользуемых компонентов.
- React Native is better than Flutter*
Чтобы собирать интерфейс из переиспользуемых компонентов.
- Почему я ушёл с React Native и перешёл во Flutter: Часть 2
Чтобы собирать интерфейс из переиспользуемых компонентов.
- Гайд по кроссплатформенной разработке с использованием React Native
Чтобы собирать интерфейс из переиспользуемых компонентов.
- Когда имеет смысл писать кроссплатформенные приложения: появление и исчезновение React Native в Lingualeo
Чтобы собирать интерфейс из переиспользуемых компонентов.
- Как на Хабре каждый раз хоронят Flutter
Чтобы создавать интерфейсы из переиспользуемых компонентов.
- Записки фрилансера: разработка первого React Native-приложения
Чтобы собирать интерфейс из переиспользуемых компонентов.
- Внедрение пуш-уведомлений в React Native: от Firebase до кастомных модулей
Чтобы собирать интерфейс из переиспользуемых компонентов.
Интерфейс и навигация
- SwiftUI: наконец-то пора? Опыт разработки на SwiftUI в контексте UIKit приложения
Чтобы построить понятную навигацию приложения.
- Разбираем Remote Compose: как Google предлагает строить BDUI
Чтобы построить понятную навигацию приложения.
- Как увеличить шрифт так, чтобы контейнер не поехал? Адаптация UI/UX для людей с проблемами зрения в XML и Compose
Чтобы одинаково запускать приложение в любой среде.
- Навигация на SwiftUI: чего не хватает и как исправить
Чтобы построить понятную навигацию приложения.
- Укрощаем Android UI-тесты на Compose: как Page Object спас нас от рутины
Чтобы построить понятную навигацию приложения.
- Compose Multiplatform 1.8.0: поддержка iOS переходит в stable
Чтобы построить понятную навигацию приложения.
- SwiftUI. Навигация по строке в разделяемом координаторе
Чтобы построить понятную навигацию приложения.
- Как использовать Kotlin Multiplatform ViewModel в SwiftUI и Jetpack Compose
Чтобы построить понятную навигацию приложения.
- Обзор новых API навигации в SwiftUI
Чтобы построить понятную навигацию приложения.
- Работа с UI-автотестами под Android: от запрета мерджа к особенностям запуска
Чтобы построить понятную навигацию приложения.
- Четыре платформы — один код. Что такое Compose Multiplatform?
Чтобы построить понятную навигацию приложения.
- Figma2Android: Как мы делали плагин для Figma, чтобы ускорить разработку интерфейсов в Jetpack Compose
Чтобы построить понятную навигацию приложения.
Сеть и работа с API
- Как оптимизировать сетевые запросы в Android: OkHttp и Retrofit с Coroutines
Чтобы надёжно передавать данные между приложениями.
- Retrofit: удобные разработка и тестирование API
Чтобы надёжно передавать данные между приложениями.
- Все библиотеки имеют фатальные недостатки, или Как мы изобретали Retrofit-подобный велосипед для JSON-RPC протокола
Чтобы передавать структурированные данные между системами.
- Перенос URLSessionTask в background URLSession при уходе приложения в фон
Чтобы надёжно передавать данные между приложениями.
- Погружаемся в недра Retrofit
Чтобы надёжно передавать данные между приложениями.
- Работа с сетью в Android с использованием корутин и Retrofit
Чтобы надёжно передавать данные между приложениями.
- Автообновление через GitHub releases с помощью Retrofit в Android
Чтобы контролировать изменения и работать в команде.
- Сетевой слой iOS‑приложения
Чтобы надёжно передавать данные между приложениями.
- Кодогенерация токенов дизайн-системы для Android по Figma API
Чтобы надёжно передавать данные между приложениями.
- Server-driven UI, «Триплекс» и JSON: как Сбер сервисы в мобильные приложения выводит
Чтобы передавать структурированные данные между системами.
- Парсим данные из Google Sheets с помощью Retrofit в Android
Чтобы надёжно передавать данные между приложениями.
- Разработка REST API с использованием Kotlin и Spring Boot: сочетание простоты и мощи
Чтобы надёжно передавать данные между приложениями.
Локальные данные
- Учимся определять способность Core Data к легковесной миграции до загрузки контейнера
Чтобы одинаково запускать приложение в любой среде.
- Room или SQLite? Как не писать SQL запросы вручную на Android
Чтобы хранить данные на мобильном устройстве.
- BundledSQLiteDriver: новый взгляд на SQLite в Android и Kotlin Multiplatform
Чтобы хранить данные на мобильном устройстве.
- Используем join в SQLite-запросах Room для android
Чтобы хранить данные на мобильном устройстве.
- 7 шагов к использованию Room. Пошаговое руководство по миграции приложения на Room
Чтобы хранить данные на мобильном устройстве.
- Применение SQLiteOpenHelper и Database Inspector в Android-разработке
Чтобы хранить данные на мобильном устройстве.
- Room: Хранение данных на Android для всех и каждого
Чтобы хранить данные на мобильном устройстве.
- Как я создавал мобильное приложение для хранения прочитанных книг BookDesk
Чтобы хранить данные на мобильном устройстве.
- Автотрекинг производительности Room Database
Чтобы хранить данные на мобильном устройстве.
- Core Data для iOS. Глава №1. Теоретическая часть
Чтобы хранить данные на мобильном устройстве.
- Room 3 — новый мажор «комнаты». И да, теперь с поддержкой wasmJs
Чтобы хранить данные на мобильном устройстве.
- Библиотека «Room» для начинающего Android-разработчика
Чтобы хранить данные на мобильном устройстве.
Тестирование и отладка
- От ручного тестирования к автоматизированному: пишем compose UI-тест под Android
Чтобы находить ошибки до выпуска продукта.
- Синергия E2E и скриншотных тестов: создание надежной системы тестирования iOS с помощью XCTest
Чтобы находить ошибки до выпуска продукта.
- Как перейти на тестирование мобильных приложений и не сойти с ума
Чтобы находить ошибки до выпуска продукта.
- JS-инъекция для iOS-тестов: как подружить WKWebView и XCTest
Чтобы находить ошибки до выпуска продукта.
- Новые подходы в Swift для тестирования: разбор технологии Swift Testing
Чтобы находить ошибки до выпуска продукта.
- 250 тестов вручную? Нет, спасибо. Автоматизируем screenshot-тестирование через Compose Preview
Чтобы находить ошибки до выпуска продукта.
- Быстрее, чище, стабильнее: как мы ускорили UI-тесты в iOS в 2,5 раза
Чтобы находить ошибки до выпуска продукта.
- Rafinad: сахар для UI-тестирования iOS-приложений
Чтобы находить ошибки до выпуска продукта.
- Как устроено автоматическое тестирование в Почте Mail.Ru под iOS
Чтобы находить ошибки до выпуска продукта.
- Как тестировать Android-приложения без использования эмуляторов? Знакомство с фермами мобильных устройств
Чтобы находить ошибки до выпуска продукта.
- Погружение в автотестирование на iOS. Часть 2. Как взаимодействовать с ui-элементами iOS приложения в тестах
Чтобы находить ошибки до выпуска продукта.
- Погружение в автотестирование на iOS. Часть 3. Жизненный цикл iOS приложения во время прогона тестов
Чтобы находить ошибки до выпуска продукта.
Публикация и безопасность
- Как мы проверяем безопасность мобильных приложений, и почему это непросто. Безопасность в Яндексе
Чтобы снизить риски и защитить систему.
- Автоматические блокировки приложений в Google Play
Чтобы снизить риски и защитить систему.
- Подкаст о безопасности мобильных устройств и разработке защитных решений для них
Чтобы снизить риски и защитить систему.
- Месяц Кубыша в App Store: 4 тысячи показов, 155 установок и 52 товарища из Шанхая
Чтобы снизить риски и защитить систему.
- Безопасность iOS-приложений: гайд для новичков
Чтобы снизить риски и защитить систему.
- Безопасность мобильного OAuth 2.0
Чтобы снизить риски и защитить систему.
- Another client side: безопасность мобильных приложений глазами атакующего
Чтобы снизить риски и защитить систему.
- Фокус на безопасность мобильных приложений
Чтобы снизить риски и защитить систему.
- Первые шаги в анализе безопасности мобильных приложений: разбираемся на примере Allsafe
Чтобы снизить риски и защитить систему.
- Безопасность мобильных приложений 1С, взгляд по диагонали
Чтобы снизить риски и защитить систему.
- Безопасная авторизация в современных мобильных приложениях: миф или реальность?
Чтобы снизить риски и защитить систему.
- Шорт-лист мифов о безопасности мобильных приложений и неприкрытая правда
Чтобы снизить риски и защитить систему.
Организация работы
- Декомпозиция целей и задач
Чтобы превращать цели в понятные задачи.