Что же "структурированного" в Structured Concurrency?
Только спустя несколько лет работы со структурированным параллелизмом (Structured Concurrency) я наконец понял, к чему именно относится слово структурированный (structured). И раз уж для меня это оказалось неожиданностью, думаю, другим тоже может быть интересно.
Интуитивно мне казалось, что всё внутри современной модели параллелизма в Swift должно считаться structured, особенно Task. Ну правда: у задач есть хендлы, их можно отменять — по сравнению с dispatch_async или pthreads это выглядит довольно структурированно. Но, почитав документацию, я понял, что ошибался.
Статья: https://apptractor.ru/info/articles/structured-concurrency.html
Платформа: Swift
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Только спустя несколько лет работы со структурированным параллелизмом (Structured Concurrency) я наконец понял, к чему именно относится слово структурированный (structured). И раз уж для меня это оказалось неожиданностью, думаю, другим тоже может быть интересно.
Интуитивно мне казалось, что всё внутри современной модели параллелизма в Swift должно считаться structured, особенно Task. Ну правда: у задач есть хендлы, их можно отменять — по сравнению с dispatch_async или pthreads это выглядит довольно структурированно. Но, почитав документацию, я понял, что ошибался.
Статья: https://apptractor.ru/info/articles/structured-concurrency.html
Платформа: Swift
Please open Telegram to view this post
VIEW IN TELEGRAM
TTBaseUIKit - готовые представления для UIKit и SwiftUI
TTBaseUIKit — это готовый к использованию iOS-фреймворк корпоративного уровня, который устраняет шаблонный код и ускоряет разработку, предоставляя более 100 готовых к использованию базовых представлений как для UIKit (программный подход), так и для SwiftUI (декларативный подход). Создавайте готовые пользовательские интерфейсы за часы, а не за дни.
Фичи:
• Быстрая разработка
• Чистая архитектура
• Совместимость с iOS 14+
• Фреймворк для отладки
• Настраиваемые темы
• Готово к использованию ИИ-агентами
TTBaseUIKit на GitHub: https://github.com/tqtuan1201/TTBaseUIKit
Платформа: iOS
⭐️: 14
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
TTBaseUIKit — это готовый к использованию iOS-фреймворк корпоративного уровня, который устраняет шаблонный код и ускоряет разработку, предоставляя более 100 готовых к использованию базовых представлений как для UIKit (программный подход), так и для SwiftUI (декларативный подход). Создавайте готовые пользовательские интерфейсы за часы, а не за дни.
Фичи:
• Быстрая разработка
• Чистая архитектура
• Совместимость с iOS 14+
• Фреймворк для отладки
• Настраиваемые темы
• Готово к использованию ИИ-агентами
TTBaseUIKit на GitHub: https://github.com/tqtuan1201/TTBaseUIKit
Платформа: iOS
⭐️: 14
Please open Telegram to view this post
VIEW IN TELEGRAM
Маяк в пустыне: Kotlin DSL для Android-шейдеров
Мне хотелось решить ещё одну задачу: сделать AGSL более массовой и понятной технологией для Android-разработчиков. Потому что в нативном виде AGSL мощный, но психологически для многих выглядит как «не трогай, это на Новый год». А мне хотелось, чтобы к шейдерам можно было подойти без дрожи в коленях и без ощущения, что сейчас придётся разговаривать с господином ПЖ на древнем пацакском наречии.
Статья: https://habr.com/ru/articles/1022546/
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Мне хотелось решить ещё одну задачу: сделать AGSL более массовой и понятной технологией для Android-разработчиков. Потому что в нативном виде AGSL мощный, но психологически для многих выглядит как «не трогай, это на Новый год». А мне хотелось, чтобы к шейдерам можно было подойти без дрожи в коленях и без ощущения, что сейчас придётся разговаривать с господином ПЖ на древнем пацакском наречии.
Статья: https://habr.com/ru/articles/1022546/
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Маяк в пустыне: Kotlin DSL для Android-шейдеров
Когда я впервые всерьёз сел писать AGSL под Android, ощущение было очень странное. С одной стороны - современный графический конвейер, RuntimeShader , RenderEffect , красивые эффекты и...
Android: Offline-First системный дизайн
В статье offline-first определяется как подход, где локальная база данных становится главным источником данных, а сеть — механизмом фоновой синхронизации. Автор отдельно подчеркивает Single Source of Truth: UI читает из локальной БД, сеть только обновляет её, а изменения в интерфейс прилетают через наблюдение за базой. Также в статье разбираются стратегии cache-first, network-first и stale-while-revalidate, плюс паттерн local-first write с отложенной синхронизацией через pending-статусы.
Статья: https://freedium-mirror.cfd/https://medium.com/android-alchemy/android-offline-first-and-mobile-system-design-c96db284e576🇺🇸
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
В статье offline-first определяется как подход, где локальная база данных становится главным источником данных, а сеть — механизмом фоновой синхронизации. Автор отдельно подчеркивает Single Source of Truth: UI читает из локальной БД, сеть только обновляет её, а изменения в интерфейс прилетают через наблюдение за базой. Также в статье разбираются стратегии cache-first, network-first и stale-while-revalidate, плюс паттерн local-first write с отложенной синхронизацией через pending-статусы.
Статья: https://freedium-mirror.cfd/https://medium.com/android-alchemy/android-offline-first-and-mobile-system-design-c96db284e576
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
Прекратите учить все подряд: план изучения Android-разработки 2026
Большинство изучающих Android испытывают трудности не потому, что Android-разработка сложна.
Они буксуют, потому что каждый роадмеп как под копирку требует выучить всё сразу: Kotlin, Compose, XML, Coroutines, Flow, Hilt, Room, Retrofit, Firebase, WorkManager, Clean Architecture, KMP, CI/CD, тестирование, публикацию в Play Store, анимации, performance-оптимизацию, модульную архитектуру, поддержку складных устройств, планшетов, TV, Wear — и, возможно, заодно ещё обрести внутренний дзен.
Так люди и тратят месяцы на «подготовку» и всё ещё не могут создать ни одного чистого Android-приложения с нуля, не открывая двенадцать вкладок и не испытывая панической атаки.
Если вы хотите стать Android-разработчиком быстрее в 2026 году, вам не нужно изучать всё. Вам нужно изучать правильные вещи в Android в правильном порядке.
Статья: https://apptractor.ru/info/articles/android-developer-roadmap-2026.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Большинство изучающих Android испытывают трудности не потому, что Android-разработка сложна.
Они буксуют, потому что каждый роадмеп как под копирку требует выучить всё сразу: Kotlin, Compose, XML, Coroutines, Flow, Hilt, Room, Retrofit, Firebase, WorkManager, Clean Architecture, KMP, CI/CD, тестирование, публикацию в Play Store, анимации, performance-оптимизацию, модульную архитектуру, поддержку складных устройств, планшетов, TV, Wear — и, возможно, заодно ещё обрести внутренний дзен.
Так люди и тратят месяцы на «подготовку» и всё ещё не могут создать ни одного чистого Android-приложения с нуля, не открывая двенадцать вкладок и не испытывая панической атаки.
Если вы хотите стать Android-разработчиком быстрее в 2026 году, вам не нужно изучать всё. Вам нужно изучать правильные вещи в Android в правильном порядке.
Статья: https://apptractor.ru/info/articles/android-developer-roadmap-2026.html
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
Книга про разработку под iOS на русском: разбираем единственный актуальный учебник по SwiftUI
Месяц назад мы выпустили перевод книги «iOS 18 App Development Essentials» Нила Смита — автора, которого англоязычное сообщество знает по многолетней серии учебников по разработке приложений под платформы Apple и Android. Книга вышла под названием «Основы разработки приложений для iOS», насчитывает 736 страниц и охватывает всё от синтаксиса Swift до публикации приложения в App Store. Книга вышла довольно толстой (а перевод всегда немного больше оригинала), но этот объем заполнен довольно полезной и актуальной информацией.
Статья: https://habr.com/ru/companies/bhv_publishing/articles/1022756/
Платформа: Swift
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Месяц назад мы выпустили перевод книги «iOS 18 App Development Essentials» Нила Смита — автора, которого англоязычное сообщество знает по многолетней серии учебников по разработке приложений под платформы Apple и Android. Книга вышла под названием «Основы разработки приложений для iOS», насчитывает 736 страниц и охватывает всё от синтаксиса Swift до публикации приложения в App Store. Книга вышла довольно толстой (а перевод всегда немного больше оригинала), но этот объем заполнен довольно полезной и актуальной информацией.
Статья: https://habr.com/ru/companies/bhv_publishing/articles/1022756/
Платформа: Swift
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Roxum IDE - среда разработки для Android
Roxum IDE — это ориентированный на мобильные устройства редактор кода и мини-IDE для Android, созданный на основе Flutter. Он объединяет в одном приложении редактирование, работу в терминале, инструменты Git/GitHub, ИИ-помощь, загрузку runtime файлов и широкие возможности настройки.
Roxum IDE на GitHub: https://github.com/heckmon/roxum-ide
Платформа: Android/кроссплатформа
⭐️: 48
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Roxum IDE — это ориентированный на мобильные устройства редактор кода и мини-IDE для Android, созданный на основе Flutter. Он объединяет в одном приложении редактирование, работу в терминале, инструменты Git/GitHub, ИИ-помощь, загрузку runtime файлов и широкие возможности настройки.
Roxum IDE на GitHub: https://github.com/heckmon/roxum-ide
Платформа: Android/кроссплатформа
⭐️: 48
Please open Telegram to view this post
VIEW IN TELEGRAM
В iOS 26 SwiftUI наконец-то стал таким же быстрым, как UIKit?
Итак. Раз и навсегда. SwiftUI так же производителен, как UIKit?
Статья: https://apptractor.ru/info/articles/ios-26-swiftui.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Итак. Раз и навсегда. SwiftUI так же производителен, как UIKit?
Статья: https://apptractor.ru/info/articles/ios-26-swiftui.html
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
CocoaLumberjack - фреймворк логирования
CocoaLumberjack — это быстрая и простая, но при этом мощная и гибкая платформа для ведения логов, предназначенная для macOS, iOS, tvOS, watchOS и visionOS.
Фичи:
• Lumberjack — быстрый. В большинстве случаев он на порядок быстрее, чем NSLog.
• Lumberjack — простой. Для настройки Lumberjack при запуске вашего приложения достаточно всего одной строки кода. Затем просто замените ваши операторы NSLog на операторы DDLog, и это практически все. (А макросы DDLog имеют точно такой же формат и синтаксис, как и NSLog, поэтому это очень просто.)
• Lumberjack — мощный. Один оператор логирования может быть отправлен нескольким логгерам, что означает, что вы можете одновременно записывать логи в файл и в консоль. Хотите больше? Создавайте собственные логгеры (это легко) и отправляйте свои сообщения в лог по сети. Или в базу данных, или в распределенную файловую систему. Возможности безграничны.
• Lumberjack — гибкий. Настраивайте логирование так, как вам нужно. Изменяйте уровни логирования для каждого файла (идеально подходит для отладки). Изменяйте уровни логирования для каждого логгера (подробная консоль, но лаконичный лог-файл). Изменяйте уровни логирования для каждой конфигурации Xcode (подробная отладка, но лаконичный релиз). Получайте сообщения в лог из релизной сборки. Настраивайте количество уровней логирования для вашего приложения. Добавляйте собственное детальное логирование. Динамически изменяйте уровни логирования во время выполнения. Выбирайте, как и когда вы хотите, чтобы ваши лог-файлы были скомпилированы. Загружайте ваши лог-файлы на центральный сервер. Сжимайте архивированные лог-файлы для экономии места на диске...
CocoaLumberjack на GitHub: https://github.com/CocoaLumberjack/CocoaLumberjack
Платформа: iOS
⭐️: 13.3K
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
CocoaLumberjack — это быстрая и простая, но при этом мощная и гибкая платформа для ведения логов, предназначенная для macOS, iOS, tvOS, watchOS и visionOS.
Фичи:
• Lumberjack — быстрый. В большинстве случаев он на порядок быстрее, чем NSLog.
• Lumberjack — простой. Для настройки Lumberjack при запуске вашего приложения достаточно всего одной строки кода. Затем просто замените ваши операторы NSLog на операторы DDLog, и это практически все. (А макросы DDLog имеют точно такой же формат и синтаксис, как и NSLog, поэтому это очень просто.)
• Lumberjack — мощный. Один оператор логирования может быть отправлен нескольким логгерам, что означает, что вы можете одновременно записывать логи в файл и в консоль. Хотите больше? Создавайте собственные логгеры (это легко) и отправляйте свои сообщения в лог по сети. Или в базу данных, или в распределенную файловую систему. Возможности безграничны.
• Lumberjack — гибкий. Настраивайте логирование так, как вам нужно. Изменяйте уровни логирования для каждого файла (идеально подходит для отладки). Изменяйте уровни логирования для каждого логгера (подробная консоль, но лаконичный лог-файл). Изменяйте уровни логирования для каждой конфигурации Xcode (подробная отладка, но лаконичный релиз). Получайте сообщения в лог из релизной сборки. Настраивайте количество уровней логирования для вашего приложения. Добавляйте собственное детальное логирование. Динамически изменяйте уровни логирования во время выполнения. Выбирайте, как и когда вы хотите, чтобы ваши лог-файлы были скомпилированы. Загружайте ваши лог-файлы на центральный сервер. Сжимайте архивированные лог-файлы для экономии места на диске...
CocoaLumberjack на GitHub: https://github.com/CocoaLumberjack/CocoaLumberjack
Платформа: iOS
⭐️: 13.3K
Please open Telegram to view this post
VIEW IN TELEGRAM
Тестирование взаимодействия нескольких устройств в Android Emulator
Тестирование взаимодействия между несколькими устройствами стало проще, чем когда-либо, благодаря эмулятору Android. Независимо от того, разрабатываете ли вы многопользовательскую игру, расширяете возможности своего мобильного приложения для разных форм-факторов или запускаете виртуальные устройства, требующие подключения к устройству, эмулятор Android теперь поддерживает эти возможности для разработчиков.
Ранее соединение нескольких виртуальных устройств Android (AVD) вызывало значительные сложности. Для подключения двух эмуляторов требовалось вручную управлять сложными правилами переадресации портов.
Теперь вы можете воспользоваться новым сетевым стеком для эмулятора Android, который обеспечивает беспроводное соединение без необходимости настройки между всеми вашими AVD.
Статья: https://apptractor.ru/info/articles/testirovanie-vzaimodeystviya-neskolkih-ustroystv-v-android-emulator.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Тестирование взаимодействия между несколькими устройствами стало проще, чем когда-либо, благодаря эмулятору Android. Независимо от того, разрабатываете ли вы многопользовательскую игру, расширяете возможности своего мобильного приложения для разных форм-факторов или запускаете виртуальные устройства, требующие подключения к устройству, эмулятор Android теперь поддерживает эти возможности для разработчиков.
Ранее соединение нескольких виртуальных устройств Android (AVD) вызывало значительные сложности. Для подключения двух эмуляторов требовалось вручную управлять сложными правилами переадресации портов.
Теперь вы можете воспользоваться новым сетевым стеком для эмулятора Android, который обеспечивает беспроводное соединение без необходимости настройки между всеми вашими AVD.
Статья: https://apptractor.ru/info/articles/testirovanie-vzaimodeystviya-neskolkih-ustroystv-v-android-emulator.html
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
StoreScreens - скриншоты приложений для App Store
Создавайте скриншоты App Store для всех необходимых размеров устройств одной командой. Запускайте ваши UI-тесты на нескольких симуляторах параллельно (или непосредственно в macOS), организуйте вывод по устройству и локали и автоматически определяйте, какому размеру App Store соответствует каждый симулятор. Поддерживает скриншоты App Store для iPhone, iPad, Apple Watch и Mac.
StoreScreens поставляется в виде трех взаимодополняющих компонентов. Большинству пользователей нужен только CLI; два других компонента существуют для того, чтобы сделать помощников по программированию на основе ИИ первоклассными операторами.
• Storescreens (CLI) - основной исполняемый файл. Запускает тесты пользовательского интерфейса на симуляторах, делает снимки экрана, создает галерею предварительного просмотра HTML.
• Storescreens-mcp (MCP-сервер) - структурированная обертка, которая предоставляет доступ к операциям CLI в виде Model Context Protocol инструментов с потоковой передачей прогресса.
• Storescreens-skill - агентский навык с инструкциями и шаблонами, которые учат помощника определять ваш проект Xcode, генерировать конфигурацию, создавать шаблоны UI-тестов пользовательского интерфейса и запускать захват.
StoreScreens на GitHub: https://github.com/ciscoriordan/storescreens-cli
Платформа: iOS
⭐️: 5
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Создавайте скриншоты App Store для всех необходимых размеров устройств одной командой. Запускайте ваши UI-тесты на нескольких симуляторах параллельно (или непосредственно в macOS), организуйте вывод по устройству и локали и автоматически определяйте, какому размеру App Store соответствует каждый симулятор. Поддерживает скриншоты App Store для iPhone, iPad, Apple Watch и Mac.
StoreScreens поставляется в виде трех взаимодополняющих компонентов. Большинству пользователей нужен только CLI; два других компонента существуют для того, чтобы сделать помощников по программированию на основе ИИ первоклассными операторами.
• Storescreens (CLI) - основной исполняемый файл. Запускает тесты пользовательского интерфейса на симуляторах, делает снимки экрана, создает галерею предварительного просмотра HTML.
• Storescreens-mcp (MCP-сервер) - структурированная обертка, которая предоставляет доступ к операциям CLI в виде Model Context Protocol инструментов с потоковой передачей прогресса.
• Storescreens-skill - агентский навык с инструкциями и шаблонами, которые учат помощника определять ваш проект Xcode, генерировать конфигурацию, создавать шаблоны UI-тестов пользовательского интерфейса и запускать захват.
StoreScreens на GitHub: https://github.com/ciscoriordan/storescreens-cli
Платформа: iOS
⭐️: 5
Please open Telegram to view this post
VIEW IN TELEGRAM
•
(iOS En) Automatic App Store Uploads w/ Bitrise and CI/CD•
(And Ru) Разработка виджетов в Android: что может пойти не так•
(And En) Build Android apps using any AI agent with Android CLI and skills•
(And En) Google Play PolicyBytes - April 2026 policy updates•
(And En) How Uber Uses AI to Move from Java to Kotlin•
(And En) The New Name-Based Destructuring in Kotlin 2.3.20•
(And En) Lead Android Engineer Mock Interview – Stock Trading App System Design (все собеседования)•
(Crs En) Best KMP libraries with Klibs.io!•
(Dev Ru) Почему AI разрушает Open Source прямо сейчас•
(Dev En) Build a Voice-Enabled Telegram Bot with the Gemini Interactions API•
(Dev En) 3 Theoretical Limits of AI - These Things Can't Be Fixed•
(Dev En) System Design Course – APIs, Databases, Caching, CDNs, Load Balancing & Production Infra•
(Mrk Ru) Что ждет мобильные приложения? CEO единорога Flo на $1млрд о фандрейзинге, web2app и AI-гонкеПрошлогодние видео:
•
(iOS Ru) От модуляризации к Clang и обратно•
(iOS Ru) Суперапп с чистого листа•
(iOS Ru) А так ли нужна Swift Modern Concurrency?•
(iOS Ru) Мгновенный фидбэк: как оперативно получать отзывы о приложении в App Store•
(And Ru) Универсальное демоприложение•
(And Ru) Не два байта переслать: эмуляция бесконтактных карт на мобильных устройствах•
(And Ru) Архитектурное собеседование Android разработчика•
(And Ru) Устройство Android Music SDK или как мы встроили музыку в суперапп-приложение•
(And Ru) Интеграция MediaPipe в Android-приложение видеоконференцсвязи•
(Dev Ru) Как устроена мобильная разработка в КинопоискеPlease open Telegram to view this post
VIEW IN TELEGRAM
❤1👏1
Android skills - навыки Android-разработки для ИИ
Android skills - это специализированный репозиторий оптимизированных для модульных инструкций и ресурсов, призванный LLM лучше понимать и применять конкретные шаблоны, соответствующие лучшим практикам и рекомендациям Google по разработке под Android.
Навыки Android основаны на открытом стандарте — файлах Markdown (SKILL.md), которые предоставляют техническое описание задачи и знакомят языковые модели со специализированными областями и рабочими процессами. В настоящее есть 6 областей, для которых созданы навыки:
• Обновление до AGP 9
• Миграция XML view в Jetpack Compose
• Navigation 3
• R8
• Обновление Play Billing Library
• Edge-to-edge
Android skills на GitHub: https://github.com/android/skills
Платформа: Android
⭐️: 3.7K
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Android skills - это специализированный репозиторий оптимизированных для модульных инструкций и ресурсов, призванный LLM лучше понимать и применять конкретные шаблоны, соответствующие лучшим практикам и рекомендациям Google по разработке под Android.
Навыки Android основаны на открытом стандарте — файлах Markdown (SKILL.md), которые предоставляют техническое описание задачи и знакомят языковые модели со специализированными областями и рабочими процессами. В настоящее есть 6 областей, для которых созданы навыки:
• Обновление до AGP 9
• Миграция XML view в Jetpack Compose
• Navigation 3
• R8
• Обновление Play Billing Library
• Edge-to-edge
Android skills на GitHub: https://github.com/android/skills
Платформа: Android
⭐️: 3.7K
Please open Telegram to view this post
VIEW IN TELEGRAM
Фильтр Калмана, geohash fog of war и три реджекта Apple: как я собрал GPS-трекер на SwiftUI
Контекст: я бэкенд-разработчик, до этого проекта не написал ни строчки на Swift. iOS для меня был чёрным ящиком – CoreLocation, MapKit, жизненный цикл приложения, фоновые режимы, App Store Review. Идея жила в голове три года, но подступиться не мог: казалось, что одному, без мобильного опыта, это неподъёмно. Сдвинулось всё, когда я начал работать с AI-агентами (Claude + Cursor) – но об этом ближе к концу.
Статья: https://habr.com/ru/articles/1024896/
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Контекст: я бэкенд-разработчик, до этого проекта не написал ни строчки на Swift. iOS для меня был чёрным ящиком – CoreLocation, MapKit, жизненный цикл приложения, фоновые режимы, App Store Review. Идея жила в голове три года, но подступиться не мог: казалось, что одному, без мобильного опыта, это неподъёмно. Сдвинулось всё, когда я начал работать с AI-агентами (Claude + Cursor) – но об этом ближе к концу.
Статья: https://habr.com/ru/articles/1024896/
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
Небольшое предупреждение SwiftUI и долгий путь к его пониманию
Я переходил на более новую версию The Composable Architecture, а это означало, что нужно было исправить ряд устаревших функций. Одним из пунктов этого списка было добавление InferSendableFromCaptures в качестве флага будущей функции Swift для всех наших таргетов.
SE-0418 действительно интересен. Он делает так, чтобы ссылки на методы более точно участвовали в проверке возможности отправки при использовании в качестве значений. Это одно из тех предложений, которое кажется очевидно правильным, как только вы его прочтете.
Я добавил его во время подготовки к Swift 6, надеясь выявить проблемы до начала работы над TCA 2.0. Я был готов исправлять код. Но я не был готов к еще одному путешествию в мир concurrency. К такому путешествию, которое бросает вызов тому, что я уже знал, просто чтобы убедиться, что я действительно это знаю.
Статья: https://apptractor.ru/info/articles/nebolshoe-preduprezhdenie-swiftui-i-dolgiy-put-k-ego-ponimaniyu.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Я переходил на более новую версию The Composable Architecture, а это означало, что нужно было исправить ряд устаревших функций. Одним из пунктов этого списка было добавление InferSendableFromCaptures в качестве флага будущей функции Swift для всех наших таргетов.
SE-0418 действительно интересен. Он делает так, чтобы ссылки на методы более точно участвовали в проверке возможности отправки при использовании в качестве значений. Это одно из тех предложений, которое кажется очевидно правильным, как только вы его прочтете.
Я добавил его во время подготовки к Swift 6, надеясь выявить проблемы до начала работы над TCA 2.0. Я был готов исправлять код. Но я не был готов к еще одному путешествию в мир concurrency. К такому путешествию, которое бросает вызов тому, что я уже знал, просто чтобы убедиться, что я действительно это знаю.
Статья: https://apptractor.ru/info/articles/nebolshoe-preduprezhdenie-swiftui-i-dolgiy-put-k-ego-ponimaniyu.html
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
Экспериментальный гибридный инференс и новые модели Gemini для Android
Google продолжает превращать AI в нативную часть Android, и свежий апдейт для разработчиков это хорошо показывает. Главная идея — больше не нужно выбирать между локальными и облачными моделями: теперь их можно объединять.
Ключевое нововведение — гибридный инференс. Он позволяет запускать часть задач прямо на устройстве, а часть — в облаке. Это работает через
Параллельно Google обновила линейку моделей Gemini, которые теперь проще интегрировать в Android-приложения. Появились новые решения для генерации изображений: более мощная модель делает качественные картинки с точным текстом и даже имитацией почерка, а более лёгкая версия оптимизирована под скорость и массовые сценарии вроде UI-графики, стикеров и визуального контента внутри приложений.
В демонстрациях Google показывает довольно практичные кейсы: например, генерация текстов с последующим переводом на разные языки. При этом всё может работать в гибридном режиме — часть обработки происходит локально, часть в облаке, и пользователь не замечает этой “магии” под капотом.
По сути, Android движется к модели, где AI становится встроенной возможностью системы. Разработчики получают инструменты для создания офлайн-функций, быстрых ассистентов и генеративных фич прямо внутри приложений без сложной инфраструктуры.
Новость:🇺🇸 https://android-developers.googleblog.com/2026/04/Hybrid-inference-and-new-AI-models-are-coming-to-Android.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Google продолжает превращать AI в нативную часть Android, и свежий апдейт для разработчиков это хорошо показывает. Главная идея — больше не нужно выбирать между локальными и облачными моделями: теперь их можно объединять.
Ключевое нововведение — гибридный инференс. Он позволяет запускать часть задач прямо на устройстве, а часть — в облаке. Это работает через
Firebase AI Logic API и даёт разработчикам гибкость: можно ускорять отклик, снижать нагрузку на сеть и при этом не терять в качестве. Плюс повышается приватность, потому что не все данные отправляются наружу.Параллельно Google обновила линейку моделей Gemini, которые теперь проще интегрировать в Android-приложения. Появились новые решения для генерации изображений: более мощная модель делает качественные картинки с точным текстом и даже имитацией почерка, а более лёгкая версия оптимизирована под скорость и массовые сценарии вроде UI-графики, стикеров и визуального контента внутри приложений.
В демонстрациях Google показывает довольно практичные кейсы: например, генерация текстов с последующим переводом на разные языки. При этом всё может работать в гибридном режиме — часть обработки происходит локально, часть в облаке, и пользователь не замечает этой “магии” под капотом.
По сути, Android движется к модели, где AI становится встроенной возможностью системы. Разработчики получают инструменты для создания офлайн-функций, быстрых ассистентов и генеративных фич прямо внутри приложений без сложной инфраструктуры.
Новость:
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
FSNotes - менеджер заметок для macOS/iOS
FSNotes — современный менеджер заметок для macOS и iOS.
Основные фичи iOS-версии:
• Синхронизация через iCloud Drive
• 3D Touch и настраиваемая клавиатура
• Контейнеры TextBundle и EncryptedTextBundle
• Закрепленные заметки, синхронизированные с настольным приложением
• Динамические шрифты
• Темный режим
• Расширение для обмена файлами
• Поддержка зашифрованных заметок
• Поддержка зашифрованных папок
• Интеграция с Git
• Создание веб-страниц
FSNotes на GitHub: https://github.com/glushchenko/fsnotes
Платформа: iOS
⭐️: 7.3K
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
FSNotes — современный менеджер заметок для macOS и iOS.
Основные фичи iOS-версии:
• Синхронизация через iCloud Drive
• 3D Touch и настраиваемая клавиатура
• Контейнеры TextBundle и EncryptedTextBundle
• Закрепленные заметки, синхронизированные с настольным приложением
• Динамические шрифты
• Темный режим
• Расширение для обмена файлами
• Поддержка зашифрованных заметок
• Поддержка зашифрованных папок
• Интеграция с Git
• Создание веб-страниц
FSNotes на GitHub: https://github.com/glushchenko/fsnotes
Платформа: iOS
⭐️: 7.3K
Please open Telegram to view this post
VIEW IN TELEGRAM
5.webm
227.8 KB
Создано в Compose: диск выбора месяца в Airbnb
В одном из прошлых обновлений Airbnb добавил в приложение циферблат выбора месяца, позволяющий пользователям самым удобным способом выбирать время. Давайте научимся воссоздавать это с помощью моей библиотеки ChromaDial.
Статья: https://apptractor.ru/info/news/sozdano-v-compose-disk-vybora-mesyatsa-v-airbnb.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
В одном из прошлых обновлений Airbnb добавил в приложение циферблат выбора месяца, позволяющий пользователям самым удобным способом выбирать время. Давайте научимся воссоздавать это с помощью моей библиотеки ChromaDial.
Статья: https://apptractor.ru/info/news/sozdano-v-compose-disk-vybora-mesyatsa-v-airbnb.html
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
Анимируем зачеркивание текста в SwiftUI
В процессе работы над одним из наших внутренних инструментов мы обнаружили, что в дизайне необходимо было «зачеркивать» выполненные задачи в списках дел, добавляя приложению немного игривости и физической выразительности. SwiftUI предоставляет модификатор зачеркивания, но он не анимируется. Для нашего инструмента мы хотели, чтобы создавалось ощущение физического рисования, когда текст зачеркивается от одного конца до другого. Сначала это казалось простой функцией, но при попытке реализовать её правильно всё оказалось гораздо сложнее.
Статья: https://apptractor.ru/info/articles/animiruem-zacherkivanie-teksta-v-swiftui.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
В процессе работы над одним из наших внутренних инструментов мы обнаружили, что в дизайне необходимо было «зачеркивать» выполненные задачи в списках дел, добавляя приложению немного игривости и физической выразительности. SwiftUI предоставляет модификатор зачеркивания, но он не анимируется. Для нашего инструмента мы хотели, чтобы создавалось ощущение физического рисования, когда текст зачеркивается от одного конца до другого. Сначала это казалось простой функцией, но при попытке реализовать её правильно всё оказалось гораздо сложнее.
Статья: https://apptractor.ru/info/articles/animiruem-zacherkivanie-teksta-v-swiftui.html
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
Material Design 3 Skill for Claude Code - навык языка дизайна для ИИ
Material Design 3 Skill for Claude Code помогает ИИ в создании пользовательского интерфейса, совместимого с MD3, с правильными токенами дизайна, компонентами, темами оформления, макетами и доступностью. Основное внимание уделяется Jetpack Compose — MaterialTheme, композабл элементам Material 3, адаптивным макетам, edge-to-edge и текущим паттернамMaterial3 в Compose.
Также рассматривается Flutter (useMaterial3, ColorScheme.fromSeed и т. д.) на второстепенном уровне, а Web (
Есть режим аудита соответствия MD3, который оценивает приложения по 10 категориям (работает для Compose/Kotlin, Flutter/Dart и web/CSS).
Охватывает M3 Expressive (май 2025 г.) с явной матрицей для каждой платформы.
Material Design 3 Skill for Claude Code на GitHub: https://github.com/hamen/material-3-skill
Платформа: Android
⭐️: 771
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Material Design 3 Skill for Claude Code помогает ИИ в создании пользовательского интерфейса, совместимого с MD3, с правильными токенами дизайна, компонентами, темами оформления, макетами и доступностью. Основное внимание уделяется Jetpack Compose — MaterialTheme, композабл элементам Material 3, адаптивным макетам, edge-to-edge и текущим паттернамMaterial3 в Compose.
Также рассматривается Flutter (useMaterial3, ColorScheme.fromSeed и т. д.) на второстепенном уровне, а Web (
@material/web) документирован как ограниченный путь: Material Web находится в режиме поддержки, а M3 Expressive не реализован в Web.Есть режим аудита соответствия MD3, который оценивает приложения по 10 категориям (работает для Compose/Kotlin, Flutter/Dart и web/CSS).
Охватывает M3 Expressive (май 2025 г.) с явной матрицей для каждой платформы.
Material Design 3 Skill for Claude Code на GitHub: https://github.com/hamen/material-3-skill
Платформа: Android
⭐️: 771
Please open Telegram to view this post
VIEW IN TELEGRAM
The Xcode build system has crashed, или Почему рекурсия — это плохо. Используем swift‑build со своими патчами
Представьте ситуацию: вы работаете в огромном проекте, где количество модулей давно перевалило за тысячу. Вы решаете обновиться до свежего Xcode 26.2, ожидая прироста производительности, но вместо заветного «Build Succeeded» получаете молчаливое падение:
Статья: https://habr.com/ru/companies/yandex/articles/1024298/
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Представьте ситуацию: вы работаете в огромном проекте, где количество модулей давно перевалило за тысячу. Вы решаете обновиться до свежего Xcode 26.2, ожидая прироста производительности, но вместо заветного «Build Succeeded» получаете молчаливое падение:
SWBBuildService quit unexpectedly.Статья: https://habr.com/ru/companies/yandex/articles/1024298/
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM