Mobile Native ️️
5.67K subscribers
947 photos
6 videos
3 files
1.07K links
Полезные материалы по мобильной разработке. Статьи, подборки, нововведения, анонсы.

Пробустить канал → https://t.me/mobile_native?boost

Автор: @artemiygreg
iOS / Swift: @swift_tips
Библиотеки и инструменты: @mobile_dev_tools
Митапы: @meetup_today
Download Telegram
Спрос на мобильных разработчиков упал на 20%

Вот интересная статистика рынка вакансий под мобилки 📈📉

• По данным hh за 2022 год количество вакансий в РФ для iOS-разработчиков упало на 20% до 15,6 тыс. В январе снижение составило уже 40%.

• По данным «Хабр Карьеры», в январе количество вакансий под iOS-разработчиков уменьшилось на 19%.

• По данным hh за 2022 год количество вакансий для Android-разработчиков упало на 19% до 17,3 тыс. В январе снижение составило 36%.

• По данным «Хабр Карьере», в январе количество вакансий для Android-разработчиков наоборот, выросло на 18%.

Еще пишут, что выросло количество вакансий для разработчиков ОС «Аврора» и Kaspersky OS. А вы знали что у Kaspersky есть собственная ОС? 😳

Читать (Ru)
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
MAD Skills Jetpack Compose

Если вдруг кто-то пропустил, стартовала новая серия MAD Skills по Jetpack Compose. Уже вышло несколько статей и видюшек, про основы layouts и modifiers и про этапы преобразования кода в UI.

👉 Fundamentals of Compose layouts and modifiers
👉 Compose phases
👉 Constraints and modifier order

И плейлист с видосами → MAD Skills series
KConMapper — How To Automate Mapping Function Creation With Kotlin’s KSP

Статья с обзором библиотечки, которая поможет сократить количество бойлерплейт кода.

Библиотека на основе аннотаций через KSP генерит экстеншн методы для маппинга одного класса в другой.

Библиотека на GitHub → KConMapper (KCM)

Читать (En)
Как адаптировать Android-приложение под Huawei

Еще один подробный гайд как подрубить huawei mobile services.

Также, от себя рекомендую выносить такие штуки в независимые модули и типы сборок, чтоб была возможность отдельно билдить сборку с нужными сервисами (google, hms, google + hms).

 Читать (Ru)
Хотите зарабатывать с показов и не тратить время, разбираясь, как работает рекламная монетизация? Используйте готовое решение от самого Яндекса — сервис Простая монетизация.

Эксперты сделают все нужные настройки за вас, подключат в приложение несколько рекламных сетей и будут перечислять вознаграждение одним платежом.

Подать заявку можно на сайте: https://clck.ru/33Y3Jw
Cracking the Mobile System Design Interview (iOS & Android)

Еще одна большая статья на тему Mobile System Design.

👉 Understand the problem
👉 Define the scope
👉 Identify technical requirements
👉 Propose a high-level design
👉 Deep-dive into one component
👉 Wrap up

Читать (En)
Jetpack Navigation Component: Manual Implementation of Multiple Back Stacks

Кто работал с Jetpack Navigation Component знает, что дефолтная реализация навигации местами хромает, особенно поведение multiple back stacks. Часто приходится писать поверх своё решение.

Вот сообственно отличная статейка с реализацией ручной обработки multiple back stacks.

Читать (En)
Mastering charts in SwiftUI

Серия статей про работу с графиками в SwiftUI.

👉 Basics
👉 Mark styling
👉 Custom Marks
👉 Interactions
👉 Customizations
Constraints and modifier order

Новый эпизод MAD Skills Jetpack Compose про Constraints, Modifier chaining и как это влияет на размеры Сomposables.

Читать (En)
Clustering With Maps Compose For Android

Я всё еще не активный пользователь Jetpack Compose, поэтому даже и не знал, что в Map Compose нет дефолтной реализации кластеризации.

Если вдруг вам такое нужно, вот тут можно посмотреть костыль обходной путь как прикрутить через android-maps-utils.

Читать (En)
Делай нейминг как сеньор

Крутая статья 💪 от команды Dodo Engineering про нейминг.

👉 Что такое нейминг и как он влияет на восприятие кода
👉 Распространённые ошибки (от неправильного перевода до избыточного, абстрактного названия)
👉 Как выстроить работу с неймингом в команде
👉 Советы и рекомендации, которые помогут сделать нейминг лучше

Обязательно всем к прочтению

Читать (Ru)
Kotlin Generic Variance Modifiers

Неплохая статья с примерами про вариативность дженериков в Kotlin.

На русском языке можно почитать на kotlinlang – Generics: in, out, where.

Читать (En)
12 Android Studio Tips and Shortcuts to Navigate Your Codebase Faster

Еще одная статья, с советами по Android Studio и реально полезными шорткатами, которые как минимум упростят поиск и навигацию по кодовой базе.

Используйте возможности IDE по максимуму для удобства разработки и быстрой навигации по проекту.

Читать (En)
Mastering Execution Time Measurement in Kotlin

Статья с примерами того, как можно измерять время выполнение ваших функций в Kotlin, с помощью👇

• measureNanoTime()
• measureTimeMillis()
• measureTimeMicros()
• measureTime()

Читать (En)
Превратности диспетчеризации в Swift

Статья про диспетчеризацию в Swift`е. Что такое диспетчеризация, какие виды бывают и рассматривается вопрос производительности и приоритета использования.

👉 Что такое диспетчеризация
👉 Статическая диспетчеризация
👉 Witness table
👉 Virtual table
👉 Динамическая диспетчеризация

И вот тут еще одна, аналогичная статья → Диспетчеризация методов в Swift

Читать (Ru)
All about navigation in the Jetpack Compose-based production code-base

Ещё одна статья на тему организации навигации в Jetpack Compose. Возможные проблемы и способы их решения.

Читать (En)
Building an Android System Design Architecture for Efficient Image Uploads with Clean Architecture

Пример проектирования архитектуры для приложения, которое могло бы позволить загружать большое количество картинок на сервер без блокировки UI и с доп. кейсами.

Без примера кода, но с разбивкой на слои и детальным описанием связей и работы каждого слоя.

Читать (En)
Tracking Android project build times

Недавно публиковал статью с примерами, как можно замерять время выполнения функиций.

А вот ловите статью с примером, как можно отслеживать время сборки проекта + сбор системной инфы (processor, corecount, ram, etc) для анализа с помощью Gradle.

Готовый Gradle скрипт тут → BuildTasks
Перевод от AppTractor → Отслеживание времени сборки Android-проекта

Читать (En)
This media is not supported in your browser
VIEW IN TELEGRAM
What's new in Xcode 14.3 and iOS 16.4

Подробная статейка с обзором изменений в Xcode 14.3 и iOS 16.4.

👉 Interact with a view Behind a sheet
👉 Translucent Sheet Background
👉 Adjust the corner radius of a sheet
👉 Control scrolling and expansion behavior
👉 Control a modal presentation in compact size classes
👉 SwiftUI Preview
👉 Print in SwiftUI Preview
👉 Function Back Deployment

Читать (En)
Advanced Layout concepts

Вышел новый эпизод из серии MAD Skills Jetpack Compose, в котором разбирается фаза Layout.

Читать (En)
7 iOS Projects to Become a Better iOS Developer

Несколько интересных open source проектов для изучения, реализованных на SwiftUI.

Для олдов – зацените проект OldOS 😉.

👉 Clean Architecture
👉 OldOS
👉 SwiftUICraft
👉 Velik
👉 OpenSesame
👉 Swiftui-2048
👉 ExpenseTracker

Читать (En)