Использование
Следует использовать
👉 @MobDevPortal
Column для отображения длинного списка загружает все элементы сразу, что замедляет работу приложенияСледует использовать
LazyColumn, которая загружает только необходимые элементыPlease open Telegram to view this post
VIEW IN TELEGRAM
❤11👍3😁1🌚1
Новое в SwiftUI
Начиная с iOS 26.0+, можно задавать отступы для секций в
👉 @MobDevPortal
Начиная с iOS 26.0+, можно задавать отступы для секций в
List с помощью модификатора listSectionMargins()Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Gemini CLI — опенсорс AI-агент для разработчиков от Google, который работает прямо в терминале
На борту — Gemini 2.5 Pro, контекст 1М токенов, 60 запросов/мин и 1000 в сутки — бесплатно (нужен только гугл-аккаунт)
Можно писать и дебажить код, автоматизировать задачи, ресерчить
При желании можно прикрутить любой MCP сервер. Например, генерировать прямо из терминала картинки (Imagen) или видео (Veo)
Исходники на GitHub
👉 @MobDevPortal
На борту — Gemini 2.5 Pro, контекст 1М токенов, 60 запросов/мин и 1000 в сутки — бесплатно (нужен только гугл-аккаунт)
Можно писать и дебажить код, автоматизировать задачи, ресерчить
При желании можно прикрутить любой MCP сервер. Например, генерировать прямо из терминала картинки (Imagen) или видео (Veo)
npm install -g @google/gemini-cli
Исходники на GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥3👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍8🔥3🌭1
Jetpack Compose стал настоящим прорывом для Android
Но в сочетании с KMP (Kotlin Multiplatform) и Compose Multiplatform он действительно раскрывает потенциал кроссплатформенной разработки
Недавно закончил проект на KMP — всё прошло максимально гладко. Доступно много полезных библиотек и инструментов.
Если ты Java/Kotlin-разработчик и ещё не пробовал — самое время начать
🔸 Стартовый проект: https://terrakok.github.io/Compose-Multiplatform-Wizard/
🔸 Библиотеки: https://github.com/terrakok/kmp-awesome#contents
🔸 Шаблоны: https://kmp.jetbrains.com/templates/
В чём разница?
Compose Multiplatform = Jetpack Compose + Kotlin для всего (и UI, и логика)
KMP = Общая логика на Kotlin + нативный UI там, где нужно (Swift, Kotlin или Java)
Стартовать с Compose MP проще, чем когда-либо. Знание Swift пригодится, но не обязательно.
Компании, которые уже используют: https://jetbrains.com/help/kotlin-multiplatform-dev/case-studies.html
👉 @MobDevPortal
Но в сочетании с KMP (Kotlin Multiplatform) и Compose Multiplatform он действительно раскрывает потенциал кроссплатформенной разработки
Недавно закончил проект на KMP — всё прошло максимально гладко. Доступно много полезных библиотек и инструментов.
Если ты Java/Kotlin-разработчик и ещё не пробовал — самое время начать
В чём разница?
Compose Multiplatform = Jetpack Compose + Kotlin для всего (и UI, и логика)
KMP = Общая логика на Kotlin + нативный UI там, где нужно (Swift, Kotlin или Java)
Стартовать с Compose MP проще, чем когда-либо. Знание Swift пригодится, но не обязательно.
Компании, которые уже используют: https://jetbrains.com/help/kotlin-multiplatform-dev/case-studies.html
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍7🔥4
Эффекты в Jetpack Compose, лежащие на поверхности
Полезная статья про то, как реализовать универсальное решение, которое умеет накладывать различные эффекты(blur, magnifier) поверх готового контента в Jetpack Compose.
👉 Читать
👉 @MobDevPortal
Полезная статья про то, как реализовать универсальное решение, которое умеет накладывать различные эффекты(blur, magnifier) поверх готового контента в Jetpack Compose.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2
Новое в SwiftUI
Используй
👉 @MobDevPortal
Используй
GlassEffectContainer для группировки связанных элементов Liquid Glass в единую форму, что позволяет добиться плавного визуального смешивания Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍2
Ныряем в холодные потоки Kotlin Flow
Базовая статья по основам Kotlin Flow для начинающих
🔸 Термины
🔸 Холодные и горячие потоки
🔸 Холодные потоки, горячие каналы
🔸 Создание Flow
🔸 Структура Flow
🔸 Пример использования
👉 Читать
👉 @MobDevPortal
Базовая статья по основам Kotlin Flow для начинающих
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍3🏆1
Совет по SwiftUI
Создайте и настройте пэйвол с помощью представлений StoreKit для SwiftUI
👉 @MobDevPortal
Создайте и настройте пэйвол с помощью представлений StoreKit для SwiftUI
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2❤1
Совет: любой Swift-код внутри блоков SKIP может напрямую взаимодействовать с Kotlin, включая JetpackCompose
Мы прозрачно транспилируем SKIP-код в Kotlin, а затем возвращаем его в нативный Swift через мост. Здесь пользователь интегрирует кастомный Compose в свой SwiftUI с помощью ComposeView
👉 @MobDevPortal
Мы прозрачно транспилируем SKIP-код в Kotlin, а затем возвращаем его в нативный Swift через мост. Здесь пользователь интегрирует кастомный Compose в свой SwiftUI с помощью ComposeView
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍4🔥3
Создание кастомного тултипа Jetpack Compose
Пошаговый гайд по созданию гибкой и удобной системы тултипов в Jetpack Compose, с помощью модифайеров и специального оборачивающего блока.
Читать
👉 @MobDevPortal
Пошаговый гайд по созданию гибкой и удобной системы тултипов в Jetpack Compose, с помощью модифайеров и специального оборачивающего блока.
Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥3👍2
SwiftUI совет
Начиная с iOS 18.0, к секциям в
👉 @MobDevPortal
Начиная с iOS 18.0, к секциям в
List можно привязывать действия с помощью модификатора sectionActions() Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍3
Хроника изменений API фоновой работы в Android
Довольно подробная статья про то, как менялись инструменты для фоновой работы в Android: Service, AlarmManager, Doze Mode, JobScheduler и т.д.
🔸 Читать
👉 @MobDevPortal
Довольно подробная статья про то, как менялись инструменты для фоновой работы в Android: Service, AlarmManager, Doze Mode, JobScheduler и т.д.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2👀1
SwiftUI совет
Начиная с iOS 26.0, можно использовать
👉 @MobDevPortal
Начиная с iOS 26.0, можно использовать
listSectionMargins() для управления отступами вокруг каждой секции в списке.Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍2👀1
This media is not supported in your browser
VIEW IN TELEGRAM
Creating an Engaging Progress Button in Jetpack Compose
Гайд по реализации вот такой кнопки с прогрессом на Jetpack Compose.
Исходный код → ProgressButton
🔸 Читать
👉 @MobDevPortal
Гайд по реализации вот такой кнопки с прогрессом на Jetpack Compose.
Исходный код → ProgressButton
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍6
Библиотека Liquid Glass для Jetpack Compose
https://github.com/Kyant0/AndroidLiquidGlass
👉 @MobDevPortal
https://github.com/Kyant0/AndroidLiquidGlass
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍4👎2
Совет по SwiftUI
Используй
(Доступно начиная с iOS 18.0)
👉 @MobDevPortal
Используй
sectionActions() для добавления действий к любой секции в списке.(Доступно начиная с iOS 18.0)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍2
Swift Actors: What Are They For?
Актор - это ссылочный тип, подобный классу, созданный для безопасного управления изменяемым состоянием в многопоточке. Акторы, представленные в Swift 5.5, помогают разработчикам писать потокобезопасный и более предсказуемый код при работе с асинхронными задачами.
В статье более детально можно почитать что это такое и чем отличаются от классов и посмотреть простые примеры использования.
🔸 Читать
👉 @MobDevPortal
Актор - это ссылочный тип, подобный классу, созданный для безопасного управления изменяемым состоянием в многопоточке. Акторы, представленные в Swift 5.5, помогают разработчикам писать потокобезопасный и более предсказуемый код при работе с асинхронными задачами.
В статье более детально можно почитать что это такое и чем отличаются от классов и посмотреть простые примеры использования.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤4
Исключения не стоит объявлять как
Даже если кажется, что у них нет изменяемого состояния — на деле это не так: у каждой
👉 @MobDevPortal
objectДаже если кажется, что у них нет изменяемого состояния — на деле это не так: у каждой
Exception есть stacktrace, а значит, каждое исключение должно быть уникальным экземпляромPlease open Telegram to view this post
VIEW IN TELEGRAM
❤11🔥4👍2