Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍5
Фишка по SwiftUI
Когда пилишь пейволл на SwiftUI с StoreKit, можно кастомизировать отображение подписок через модификатор
Сейчас в комплекте есть 6 встроенных стилей на выбор
👉 @MobDevPortal
Когда пилишь пейволл на SwiftUI с StoreKit, можно кастомизировать отображение подписок через модификатор
subscriptionStoreControlStyle()Сейчас в комплекте есть 6 встроенных стилей на выбор
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2
В чем разница между Immutable и Stable в Compose?
🔸 Immutable следует использовать для действительно неизменяемых классов, которые не могут изменяться.
🔸 Stable означает, что данный класс не будет обновляться без уведомления наблюдателей. Например, класс, агрегирующий
В большинстве случаев Compose может самостоятельно определить стабильность класса, и явные аннотации не требуются, однако их можно использовать, чтобы явно указать стабильность конкретного типа.
❗️ На данный момент Compose обрабатывает аннотации Immutable и Stable абсолютно одинаково
👉 @MobDevPortal
State, является стабильным, поскольку все наблюдатели State будут повторно перекомпонованы при изменении его значения. 𝐒𝐭𝐚𝐛𝐥𝐞 — это понятие, специфичное именно для Compose. Если аргумент компонуемой функции стабильный, нам не нужно проверять его содержимое, чтобы определить необходимость повторной перекомпоновки; достаточно проверить ссылку на объект.В большинстве случаев Compose может самостоятельно определить стабильность класса, и явные аннотации не требуются, однако их можно использовать, чтобы явно указать стабильность конкретного типа.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2
Совет по SwiftUI
При отображении поповера вы можете настроить его положение с помощью параметра
👉 @MobDevPortal
При отображении поповера вы можете настроить его положение с помощью параметра
arrowEdgePlease open Telegram to view this post
VIEW IN TELEGRAM
❤7👍3
Forwarded from IT Portal
Xcode превратился в Cursor — туда завезли поддержку ChatGPT и других LLM. Можно подключаться по API или запускать локально
Причём для ChatGPT даже не нужен аккаунт OpenAI — доступен базовый режим с ограниченными лимитами
Apple также не забыли про важную для вайбкодеров фичу — поддержка Voice Control позволяет писать код голосом, общаясь с LLM напрямую
Обо всём этом рассказали сегодня на WWDC 2025. Запись презентации здесь
@IT_Portal
Причём для ChatGPT даже не нужен аккаунт OpenAI — доступен базовый режим с ограниченными лимитами
Apple также не забыли про важную для вайбкодеров фичу — поддержка Voice Control позволяет писать код голосом, общаясь с LLM напрямую
Обо всём этом рассказали сегодня на WWDC 2025. Запись презентации здесь
@IT_Portal
🔥10❤3👎2
This media is not supported in your browser
VIEW IN TELEGRAM
Офигеть! Это происходит
Вот я на macOS 26 Beta запускаю контейнеры без установленного Docker
😱 НАТИВНАЯ ПОДДЕРЖКА КОНТЕЙНЕРОВ В MACOS
https://github.com/apple/container
👉 @MobDevPortal
Вот я на macOS 26 Beta запускаю контейнеры без установленного Docker
https://github.com/apple/container
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍4
Что такое Android Runtime?
Мы пишем код на Kotlin/Java, и при сборке APK он преобразуется в байткод.
В нашем APK-файле будут находиться
Наши Android-устройства не могут выполнять байткод напрямую, поэтому его необходимо транслировать в машинный код. Эта трансляция осуществляется средой выполнения Android — Android Runtime.
Kotlin/Java > байткод (.dex-файлы в APK) > машинный код
Теперь, когда мы знаем, что такое Android Runtime, пора узнать о различных типах Android Runtime и их эволюции:
🔸 Dalvik
🔸 ART
Узнайте больше здесь:
https://outcomeschool.com/blog/dalvik-art-jit-aot
👉 @MobDevPortal
Мы пишем код на Kotlin/Java, и при сборке APK он преобразуется в байткод.
В нашем APK-файле будут находиться
.dex-файлы, содержащие байткод.Наши Android-устройства не могут выполнять байткод напрямую, поэтому его необходимо транслировать в машинный код. Эта трансляция осуществляется средой выполнения Android — Android Runtime.
Kotlin/Java > байткод (.dex-файлы в APK) > машинный код
Теперь, когда мы знаем, что такое Android Runtime, пора узнать о различных типах Android Runtime и их эволюции:
Узнайте больше здесь:
https://outcomeschool.com/blog/dalvik-art-jit-aot
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍6😁2
This media is not supported in your browser
VIEW IN TELEGRAM
VisualTransformation — это инструмент в Jetpack Compose, который позволяет изменять визуальное отображение текста в TextField, не затрагивая при этом фактическое значение ввода. Например, его можно использовать для маскировки цифр или вставки дефисов при вводе номера кредитной картыОн форматирует текст в процессе ввода, улучшая читаемость и делая текст более удобным для восприятия. При грамотно реализованной визуальной трансформации пользователь может вводить данные без необходимости заботиться о форматировании
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤4
Совет по SwiftUI
Закрепи важные элементы интерфейса, например кнопку "Продолжить" на экране онбординга, с помощью модификатора
👉 @MobDevPortal
Закрепи важные элементы интерфейса, например кнопку "Продолжить" на экране онбординга, с помощью модификатора
safeAreaInset(), чтобы основной контент можно было скроллить независимо.Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤5
This media is not supported in your browser
VIEW IN TELEGRAM
Принёс полезное — базу актуальных бесплатных API, которую регулярно обновляют 😇
Внутри аж 403 штуки на любой вкус: от игр и погоды до финансов и здоровья
Алгоритмы присваивают рейтинг каждому API на основе надежности, частоты ошибок и времени отклика
Если апишка перестает работать или становится платной, она теряет рейтинг и удаляется с сайта
👉 @MobDevPortal
Внутри аж 403 штуки на любой вкус: от игр и погоды до финансов и здоровья
Алгоритмы присваивают рейтинг каждому API на основе надежности, частоты ошибок и времени отклика
Если апишка перестает работать или становится платной, она теряет рейтинг и удаляется с сайта
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10😁1
Анонсирована рабочая группа Swift on Android — цель: сделать Android официально поддерживаемой платформой для Swift и поддерживать эту интеграцию на постоянной основе.
Подробнее тут: https://forums.swift.org/t/announcing-the-android-workgroup/80666
👉 @MobDevPortal
Подробнее тут: https://forums.swift.org/t/announcing-the-android-workgroup/80666
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤4🔥1
Использование
Следует использовать
👉 @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