Новости
Разработка мобильных приложений: новости и статьи — 02.07
Instabug оценил возможности AI‑ассистентов (включая GitHub Copilot, Cursor, Claude Code и SmartResolve) автоматически устранять сбои в мобильных приложениях на iOS и Android. Тесты проводились на реальных крашах, а ассистенты видели всю кодовую базу и стек‑трейсы. Критерии оценки включали корректность (40 %), схожесть с человеческими исправлениями (30 %), ясность, глубину и релевантность, что позволило получить общий показатель точности. Результаты показали, что на iOS лидирует SmartResolve с точностью 66.8%, в то время как на Android Cursor оказался лучшим с 73.9%, а SmartResolve и Copilot были близко. Однако общая производительность на Android оказалась выше, чем на iOS, за счёт более ровного распределения оценок. При этом схожесть с решениями разработчиков была заметно ниже, что подчёркивает необходимость ревью человеком. Итог: AI‑ассистенты ускоряют первые шаги по устранению крашей, но для сложных случаев, соответствия архитектуре и поддерживаемости кода критически важен контроль разработчиков.
Разработка
- Что такое топологическая сортировка и где она применяется
- Открытый и опасный: как снизить риски open-source в приложениях
- BDUI: эволюция динамических интерфейсов
- Benchmarking AI Coding Assistants for Mobile App Crash Resolution
- Clean Architecture Is the Big Lie We Keep Falling For
Кроссплатформа
- StringBuffer (Technique of the Week)
- Kotlin’s Funeral Has Been Announced? Apple’s Master Plan Behind Swift for Android
iOS
Airbnb написал про свой опыт улучшения производительности SwiftUI. В целом, они абстрагировались от алгоритм сравнения на основе рефлексии и написали свое решение на основе Equatable. Макрос @Equatable генерирует реализацию Equatable, которая сравнивает все сохраненные свойства экземпляра представления, исключая свойства с обертками свойств SwiftUI, такими как @State и @Environment, которые запускают обновления представления через другие механизмы. Свойства, которые не являются Equatable и не влияют на отрисовку тела представления, можно пометить с помощью @SkipEquatable, чтобы исключить их из сгенерированной реализации. Это позволяет продолжать использовать обработчики действий на основе замыканий из библиотеки однонаправленного потока данных, не влияя на процесс диффинга SwiftUI.
- Понимаем и улучшаем производительность SwiftUI
- Why I Stopped Using Structs for Everything in Swift
- SwiftUI Search API (Searchable): All We Need to Know All In One
- Grouping Liquid Glass components using glassEffectUnion on iOS 26
- Designing custom UI with Liquid Glass on iOS 26
Android
Исследуя проблемы с медленной сборкой Kotlin/Native, автор статьи погружается в мир Klib-файлов, IR (Intermediate Representation) и двух ключевых стадий компиляции: сборки IR и финального линкования. Оказывается, .klib содержит сериализованный IR-код, а не нативный бинарный, и только при сборке итогового фреймворка происходит полноценная компиляция в машинный код. Это объясняет, почему задача linkReleaseFrameworkIosArm64 может занимать до 18 минут — линковка просто не кэшируется и всегда запускается заново. В статье также раскрываются нюансы кроссплатформенных библиотек, влияние статических и динамических фреймворков, и то, почему в мобильной разработке предпочтительнее использовать статические библиотеки. Хотя линковка остаётся узким местом в сборке, понимание архитектуры K/N и устройства Klib-файлов даёт разработчику контроль над процессом и помогает принять обоснованные решения при оптимизации сборки.
- Meta присоединилась к Kotlin Foundation
- Kizzy — менеджер Rich Presence для Discord на Kotlin
- Best Practices of Retrofit and OkHttp in Android Development
- Context parameters in Kotlin 2.2
- Exploring Kotlin (native) compilation
-
Исследования4 недели назад
Bidease: мобильный маркетинг 2025 — баланс AI, удержания и конфиденциальности
-
Видео и подкасты для разработчиков3 недели назад
Пагинация: от идеи до реализации
-
Новости3 недели назад
Видео и подкасты о мобильной разработке 2025.25
-
Видео и подкасты для разработчиков3 недели назад
История, принципы и концепции библиотеки навигации Decompose