Как я ежедневно использую ИИ в качестве iOS-инженера (реальные промпты, реальные примеры)
ИИ не заменил меня в качестве iOS-инженера. Но он сделал значительную часть работы, на которую я не должен тратить свое время.
Не в яркой форме. Не волшебным образом. И уж точно не для «написания всего приложения за меня».
Вместо этого ИИ незаметно превратился в ежедневного инженерного помощника, который помогает мне:
• Мыслить более четко
• Двигаться быстрее, не срезая углы
• Вылавливать ошибки раньше
• Снижать умственную усталость
• Сосредоточиться на реальных инженерных решениях
Эта статья не про будущее. Она о том, что я делаю сегодня как iOS-инженер, используя ИИ в реальных проектах.
Статья: https://apptractor.ru/info/articles/kak-ya-ezhednevno-ispolzuyu-ii-v-kachestve-ios-inzhenera-realnye-prompty-realnye-primery.html
Платформа: разработка/iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
ИИ не заменил меня в качестве iOS-инженера. Но он сделал значительную часть работы, на которую я не должен тратить свое время.
Не в яркой форме. Не волшебным образом. И уж точно не для «написания всего приложения за меня».
Вместо этого ИИ незаметно превратился в ежедневного инженерного помощника, который помогает мне:
• Мыслить более четко
• Двигаться быстрее, не срезая углы
• Вылавливать ошибки раньше
• Снижать умственную усталость
• Сосредоточиться на реальных инженерных решениях
Эта статья не про будущее. Она о том, что я делаю сегодня как iOS-инженер, используя ИИ в реальных проектах.
Статья: https://apptractor.ru/info/articles/kak-ya-ezhednevno-ispolzuyu-ii-v-kachestve-ios-inzhenera-realnye-prompty-realnye-primery.html
Платформа: разработка/iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
🗿2
Open Video Editor - редактор видео для Android
Open Video Editor - открытый редактор видео для Android. Он поддерживает HDR и позволяет применять фильтры. С помощью этого приложения вы также можете обрезать, масштабировать и поворачивать видео, и даже делать его в оттенках серого. Кроме того, с помощью этого приложения можно извлечь звук из видео, преобразовать HDR-видео в SDR или конвертировать его в другой формат.
Open Video Editor на GitHub: https://github.com/devhyper/open-video-editor
Платформа: Android
⭐️: 588
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Open Video Editor - открытый редактор видео для Android. Он поддерживает HDR и позволяет применять фильтры. С помощью этого приложения вы также можете обрезать, масштабировать и поворачивать видео, и даже делать его в оттенках серого. Кроме того, с помощью этого приложения можно извлечь звук из видео, преобразовать HDR-видео в SDR или конвертировать его в другой формат.
Open Video Editor на GitHub: https://github.com/devhyper/open-video-editor
Платформа: Android
⭐️: 588
Please open Telegram to view this post
VIEW IN TELEGRAM
•
(iOS Ru) Боевой Reverse Engineering и патчинг под Non-Jailbroken iOS-девайсы•
(iOS En) 2 Hidden SwiftUI Scroll APIs•
(iOS En) Apple Stocks UI Animation: Auto Scroll & Looping ScrollView Using SwiftUI•
(iOS En) Is it a bad idea to use Group in SwiftUI?•
(iOS En) Initializing Observable Classes•
(iOS En) Complex UI: iOS Calendar App Infinite ScrollView - SwiftUI•
(iOS En) Complex UI Animations | KeyFrames | Microinteractions | SwiftUI•
(iOS En) The Most Satisfying iOS 26 Design Feature - Concentricity•
(And En) What’s new in Android Studio Otter•
(And En) XR: Virtually here•
(And En) Senior Android Developer Reviews AI-Generated Code•
(And En) Nav2 vs. Nav3 - Which Library For a Production Android App In 2026?•
(And En) How to get the right CoroutineScope•
(And En) The Genius System Behind the Uber App’s Real-Time Map•
(Crs En) Make any component Swipe in Compose Multiplatform!•
(Dev Ru) Разработка в 2026: к чему готовиться прямо сейчас•
(Dev Ru) Выбираем механическую клавиатуру — Сплит клавиатуры для программиста•
(Dev Ru) Probator: эволюция UI-тестирования в Яндекс Картах•
(Dev En) How Amazon Fashion Uses Kotlin for Backend DevelopmentПрошлогодние видео:
•
(iOS Ru) Переезд с UIKIT на SwiftUI — кажется, УЖЕ ПОРА!•
(Dev Ru) BA x Frontend: Как перестать проектировать в головеPlease open Telegram to view this post
VIEW IN TELEGRAM
2025: год, когда умер SwiftUI
Помните 2019-й? Релиз SwiftUI, дикий восторг и... осознание, что все «немного» сломано. Мы прощали ему баги, отсутствие нормальной навигации и плохую производительность ради невероятной скорости разработки.
Но мир изменился. Прошло 6 лет, и чаша весов внезапно качнулась обратно.
Великое возвращение UIKit
В 2025 году UIKit снова стал «Production Ready». И вот почему:
• Смерть бойлерплейта через AI. Главный минус UIKit — многословность. Но сегодня агентные AI-инструменты пишут делегаты и верстку на констрейнтах за секунды. Им не нужно гадать, как работает свежий и нестабильный API SwiftUI — они обучены на десятилетиях документации UIKit.
• Макрос
• Производительность «без магии». SwiftUI — это всегда накладные расходы на диффинг состояний. В UIKit вы контролируете каждый кадр. Хотите обновлять UI напрямую во время жеста, а стейт — только в конце? В UIKit это база, в SwiftUI — борьба с фреймворком.
Айсберг возможностей
SwiftUI — это верхушка айсберга, если вам нужно что-то сложнее списка:
• Сложные жесты: Попробуйте реализовать привязку анимации к
• Кастомные переходы:
Архитектурный парадокс
• SwiftUI (MV): Писать быстро, читать — больно. Код размазан по модификаторам, логика жестов живет там, где «было удобно».
• UIKit (Классический стек): Писать (было) долго, но читать — одно удовольствие. Строгая стандартизация позволяет сразу понять, где искать обработку нажатия, а где — логику данных.
Итог
SwiftUI создавался как ответ Apple на Flutter и React Native, чтобы удержать разработчиков. Но когда код за вас пишет AI, скорость написания перестает быть решающим фактором. На первое место снова выходят читаемость, производительность и UX.
SwiftUI мертв. Да здравствует UIKit?
Статья: https://levelup.gitconnected.com/2025-the-year-swiftui-died-8bb6d95c74aa
Платформа: iOS
А на чем вы стартуете новый проект в 2025-м? 🍓 за SwiftUI, 🌚 за UIKit.
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Помните 2019-й? Релиз SwiftUI, дикий восторг и... осознание, что все «немного» сломано. Мы прощали ему баги, отсутствие нормальной навигации и плохую производительность ради невероятной скорости разработки.
Но мир изменился. Прошло 6 лет, и чаша весов внезапно качнулась обратно.
Великое возвращение UIKit
В 2025 году UIKit снова стал «Production Ready». И вот почему:
• Смерть бойлерплейта через AI. Главный минус UIKit — многословность. Но сегодня агентные AI-инструменты пишут делегаты и верстку на констрейнтах за секунды. Им не нужно гадать, как работает свежий и нестабильный API SwiftUI — они обучены на десятилетиях документации UIKit.
• Макрос
@Observable в UIKit. Apple тихо портировала современные макросы и добавила метод updateProperties(). Теперь архитектурные споры (MVVM vs MVC) можно закрыть — связка данных стала чистой и системной.• Производительность «без магии». SwiftUI — это всегда накладные расходы на диффинг состояний. В UIKit вы контролируете каждый кадр. Хотите обновлять UI напрямую во время жеста, а стейт — только в конце? В UIKit это база, в SwiftUI — борьба с фреймворком.
Айсберг возможностей
SwiftUI — это верхушка айсберга, если вам нужно что-то сложнее списка:
• Сложные жесты: Попробуйте реализовать привязку анимации к
contentOffset скролла в SwiftUI (до iOS 18) и сравните с элегантным UIScrollViewDelegate.• Кастомные переходы:
UIViewControllerTransitioningDelegate до сих пор дает недостижимый для SwiftUI уровень контроля над Hero-анимациями.Архитектурный парадокс
• SwiftUI (MV): Писать быстро, читать — больно. Код размазан по модификаторам, логика жестов живет там, где «было удобно».
• UIKit (Классический стек): Писать (было) долго, но читать — одно удовольствие. Строгая стандартизация позволяет сразу понять, где искать обработку нажатия, а где — логику данных.
Итог
SwiftUI создавался как ответ Apple на Flutter и React Native, чтобы удержать разработчиков. Но когда код за вас пишет AI, скорость написания перестает быть решающим фактором. На первое место снова выходят читаемость, производительность и UX.
SwiftUI мертв. Да здравствует UIKit?
Статья: https://levelup.gitconnected.com/2025-the-year-swiftui-died-8bb6d95c74aa
Платформа: iOS
А на чем вы стартуете новый проект в 2025-м? 🍓 за SwiftUI, 🌚 за UIKit.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡9🔥2🌚2🍓1
Sozo Tv - плеер для аниме и кино
🇸🇱 Проект нашего читателя, присоединяйтесь!
Sozo создан с идеальным сочетанием простоты и современной элегантности. Это клиент, разработанный для Anilist и других платформ, предоставляет пользователям возможность транслировать и скачивать любимые аниме, мангу, фильмы и сериалы.
Sozo Tv на GitHub: https://github.com/professorDeveloper/sozo-tv
Платформа: Android
⭐️: 42
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Sozo создан с идеальным сочетанием простоты и современной элегантности. Это клиент, разработанный для Anilist и других платформ, предоставляет пользователям возможность транслировать и скачивать любимые аниме, мангу, фильмы и сериалы.
Sozo Tv на GitHub: https://github.com/professorDeveloper/sozo-tv
Платформа: Android
⭐️: 42
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥14❤5👍2⚡1
Swift Book - печатная версия руководства по Swift
Этот репозиторий содержит документацию по языку программирования Swift в красивом, пригодном для печати PDF-формате. Основа - оригинальное руководство по Swift с docs.swift.org, обертка на Typst и DocC.
Swift Book на GitHub: https://github.com/peterfriese/swift-book
Платформа: iOS
⭐️: 151
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Этот репозиторий содержит документацию по языку программирования Swift в красивом, пригодном для печати PDF-формате. Основа - оригинальное руководство по Swift с docs.swift.org, обертка на Typst и DocC.
Swift Book на GitHub: https://github.com/peterfriese/swift-book
Платформа: iOS
⭐️: 151
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Обновите проекты Kotlin для Android Gradle Plugin 9.0
Плагин Android Gradle 9.0 уже доступен, и он включает в себя два важных изменения, которые затронут существующие проекты на Kotlin:
• Android-приложения должны начать использовать встроенную в AGP 9.0 поддержку Kotlin.
• Проекты Kotlin Multiplatform, ориентированные на Android, должны перейти на новый плагин библиотеки Android KMP.
В этом посте приведены некоторые подробности об этих изменениях и указаны ресурсы, которые понадобятся вам для обновления существующих проектов.
Вам также нужно будет обновить инструменты и плагины, которые зависят от AGP, до последних версий с поддержкой AGP 9.0. Если вы используете Android Studio, вам нужно использовать Otter 3 Feature Drop или более позднюю версию.
Статья: https://apptractor.ru/info/articles/obnovite-proekty-kotlin-dlya-android-gradle-plugin-9-0.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Плагин Android Gradle 9.0 уже доступен, и он включает в себя два важных изменения, которые затронут существующие проекты на Kotlin:
• Android-приложения должны начать использовать встроенную в AGP 9.0 поддержку Kotlin.
• Проекты Kotlin Multiplatform, ориентированные на Android, должны перейти на новый плагин библиотеки Android KMP.
В этом посте приведены некоторые подробности об этих изменениях и указаны ресурсы, которые понадобятся вам для обновления существующих проектов.
Вам также нужно будет обновить инструменты и плагины, которые зависят от AGP, до последних версий с поддержкой AGP 9.0. Если вы используете Android Studio, вам нужно использовать Otter 3 Feature Drop или более позднюю версию.
Статья: https://apptractor.ru/info/articles/obnovite-proekty-kotlin-dlya-android-gradle-plugin-9-0.html
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
Я сократил потребление памяти SwiftUI на 80% с помощью одного контринтуитивного трюка
Три месяца назад я был готов отказаться от SwiftUI.
Мое приложение падало. Использование памяти росло каждый раз, когда пользователи переходили туда и сюда. И сколько бы раз я ни говорил себе: «SwiftUI управляет памятью автоматически», цифры в Instruments говорили совсем о другом.
Затем я заметил нечто маленькое — почти скучное — что полностью изменило поведение моего приложения.
Это была не библиотека. Это не была новая архитектура. Это был даже не новый код.
Это было понимание того, как SwiftUI на самом деле поддерживает работу приложений.
Статья: https://apptractor.ru/info/articles/ya-sokratil-potreblenie-pamyati-swiftui-na-80-s-pomoschyu-odnogo-kontrintuitivnogo-tryuka.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Три месяца назад я был готов отказаться от SwiftUI.
Мое приложение падало. Использование памяти росло каждый раз, когда пользователи переходили туда и сюда. И сколько бы раз я ни говорил себе: «SwiftUI управляет памятью автоматически», цифры в Instruments говорили совсем о другом.
Затем я заметил нечто маленькое — почти скучное — что полностью изменило поведение моего приложения.
Это была не библиотека. Это не была новая архитектура. Это был даже не новый код.
Это было понимание того, как SwiftUI на самом деле поддерживает работу приложений.
Статья: https://apptractor.ru/info/articles/ya-sokratil-potreblenie-pamyati-swiftui-na-80-s-pomoschyu-odnogo-kontrintuitivnogo-tryuka.html
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🤣1
Kudoku - решатель и генератор судоку на Kotlin
Kudoku - мощный движок для судоку, написанный на Kotlin.
Kudoku на GitHub: https://github.com/ILikeYourHat/Kudoku
Платформа: Android
⭐️: 15
Kudoku - мощный движок для судоку, написанный на Kotlin.
Kudoku на GitHub: https://github.com/ILikeYourHat/Kudoku
Платформа: Android
⭐️: 15
Локальный плеер для IOS: Music is Player
Я разработчик iOS‑приложения Music Player в компании MediaRise. Хотел поделиться инженерной частью: как мы организовали импорт музыки из Files, автосканирование, защиту от дубликатов и стабильное воспроизведение.
Статья: https://habr.com/ru/articles/986624/
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Я разработчик iOS‑приложения Music Player в компании MediaRise. Хотел поделиться инженерной частью: как мы организовали импорт музыки из Files, автосканирование, защиту от дубликатов и стабильное воспроизведение.
Статья: https://habr.com/ru/articles/986624/
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
Разработка [iOS] приложений с помощью ИИ в 2026 году
Томас Рикуар из Medium написал огромную статью о своем подходе к iOS-разработке с помощью ИИ, используемых инструментах и идеях о том, как будет развиваться программирование в будущем:
Статья: https://apptractor.ru/info/articles/razrabotka-prilozheniy-s-pomoschyu-ii-v-2026-godu.html
Платформа: разработка/iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Томас Рикуар из Medium написал огромную статью о своем подходе к iOS-разработке с помощью ИИ, используемых инструментах и идеях о том, как будет развиваться программирование в будущем:
Программирование мертво, и оно не вернётся. Оно медленно, но верно угасает.
Статья: https://apptractor.ru/info/articles/razrabotka-prilozheniy-s-pomoschyu-ii-v-2026-godu.html
Платформа: разработка/iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
AccessibilitySnapshot - простое создание регрессионных тестов доступности для iOS
AccessibilitySnapshot упрощает добавление регрессионных тестов для проверки доступности в iOS-приложениях. Этот фреймворк основан на идее snapshot-тестирования, предоставляя снапшоты иерархии доступности.
AccessibilitySnapshot использует существующие фреймворки для создания спапшотов доступности, добавляя поддержку создания снимков доступности вашего приложения. По умолчанию он использует фреймворк SnapshotTesting для создания снимков, но его также можно переключить на iOSSnapshotTestCase.
AccessibilitySnapshot на GitHub: https://github.com/cashapp/AccessibilitySnapshot
Платформа: iOS
⭐️: 623
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
AccessibilitySnapshot упрощает добавление регрессионных тестов для проверки доступности в iOS-приложениях. Этот фреймворк основан на идее snapshot-тестирования, предоставляя снапшоты иерархии доступности.
AccessibilitySnapshot использует существующие фреймворки для создания спапшотов доступности, добавляя поддержку создания снимков доступности вашего приложения. По умолчанию он использует фреймворк SnapshotTesting для создания снимков, но его также можно переключить на iOSSnapshotTestCase.
AccessibilitySnapshot на GitHub: https://github.com/cashapp/AccessibilitySnapshot
Платформа: iOS
⭐️: 623
Please open Telegram to view this post
VIEW IN TELEGRAM
Как red_mad_robot развивает свою опенсорс-экосистему — от Android и iOS инструментов до AI-систем и агентных фреймворков
Сергей Иванов, Head of Android red_mad_robot, поделился подробностями об открытых проектах и open source-стратегии компании, её целеполагании и результатах в данной сфере. Получилось развернутое интервью с примечательными инсайтами, а также примерами и комментариями по теме.
Статья: https://habr.com/ru/articles/986828/
Платформа: разработка
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Сергей Иванов, Head of Android red_mad_robot, поделился подробностями об открытых проектах и open source-стратегии компании, её целеполагании и результатах в данной сфере. Получилось развернутое интервью с примечательными инсайтами, а также примерами и комментариями по теме.
Статья: https://habr.com/ru/articles/986828/
Платформа: разработка
Please open Telegram to view this post
VIEW IN TELEGRAM
Apple не использует MVVM? MVVM — это неправильный архитектурный шаблон?
«Apple не использует MVVM».
«MVVM — неправильный архитектурный шаблон».
«MV — это то, как это должно быть сделано».
Слышали подобные утверждения раньше?
Я точно слышал — особенно в Твиттере (или как он там сейчас называется). В сообществе SwiftUI идёт непрекращающаяся борьба за то, какая архитектура «правильная». И знаете что? Я почти поверил в эту точку зрения… пока недавно не посмотрел официальный обучающий ролик Apple.
Статья: https://apptractor.ru/info/articles/apple-ne-ispolzuet-mvvm-mvvm-eto-nepravilnyy-arhitekturnyy-shablon.html
Платформа: архитектура/iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
«Apple не использует MVVM».
«MVVM — неправильный архитектурный шаблон».
«MV — это то, как это должно быть сделано».
Слышали подобные утверждения раньше?
Я точно слышал — особенно в Твиттере (или как он там сейчас называется). В сообществе SwiftUI идёт непрекращающаяся борьба за то, какая архитектура «правильная». И знаете что? Я почти поверил в эту точку зрения… пока недавно не посмотрел официальный обучающий ролик Apple.
Статья: https://apptractor.ru/info/articles/apple-ne-ispolzuet-mvvm-mvvm-eto-nepravilnyy-arhitekturnyy-shablon.html
Платформа: архитектура/iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡2🤣1
RunAnywhere - инструментарий для локального запуска ИИ
RunAnywhere- платформа для локального запуска LLM на устройствах. Поддерживает чат-боты (Llama, Mistral, Qwen, SmolLM и т.п.), речь-в-текст и текст-в-речь, голосовых ассистентов (STT → LLM → TTS конвейеры).
Все это без облаков, без задержек и без передачи данных кому-либо.
Есть SDK для Swift, Kotlin, React Native и Flutter.
RunAnywhere на GitHub: https://github.com/RunanywhereAI/runanywhere-sdks
Платформа: iOS/Android
⭐️: 3.9K
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
RunAnywhere- платформа для локального запуска LLM на устройствах. Поддерживает чат-боты (Llama, Mistral, Qwen, SmolLM и т.п.), речь-в-текст и текст-в-речь, голосовых ассистентов (STT → LLM → TTS конвейеры).
Все это без облаков, без задержек и без передачи данных кому-либо.
Есть SDK для Swift, Kotlin, React Native и Flutter.
RunAnywhere на GitHub: https://github.com/RunanywhereAI/runanywhere-sdks
Платформа: iOS/Android
⭐️: 3.9K
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
AwesomeUI - готовые элементы Compose
AwesomeUI - подборка "copy, paste, use" сниппетов и полезных элементов, предназначенная для тех, кто планирует или уже разрабатывает приложение в Compose Multiplatform или просто приложение для Android и уже использует Jetpack Compose и Material3.
AwesomeUI на GitHub: https://github.com/ArcaDone/AwesomeUI
Платформа: Android
⭐️: 72
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
AwesomeUI - подборка "copy, paste, use" сниппетов и полезных элементов, предназначенная для тех, кто планирует или уже разрабатывает приложение в Compose Multiplatform или просто приложение для Android и уже использует Jetpack Compose и Material3.
AwesomeUI на GitHub: https://github.com/ArcaDone/AwesomeUI
Платформа: Android
⭐️: 72
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Почему Senior инженеры допускают провал неудачных проектов
В крупных компаниях высказываться о том, что вы считаете «плохим проектом», — это хорошо. Но только в меру. Иногда признаком старшинства является осознание того, что спорить с людьми, которые не хотят слушать, не стоит; лучше приберечь свои советы.
Статья: https://apptractor.ru/info/articles/pochemu-senior-inzhenery-dopuskayut-proval-neudachnyh-proektov.html
Платформа: разработка
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
В крупных компаниях высказываться о том, что вы считаете «плохим проектом», — это хорошо. Но только в меру. Иногда признаком старшинства является осознание того, что спорить с людьми, которые не хотят слушать, не стоит; лучше приберечь свои советы.
Статья: https://apptractor.ru/info/articles/pochemu-senior-inzhenery-dopuskayut-proval-neudachnyh-proektov.html
Платформа: разработка
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
•
(iOS En) SwiftUI Screenshot Prevention - Prevent Users from Taking Screenshots of a SwiftUI View•
(iOS En) Apple Books Hero Effect - Synchronized Scroll Matched Geometry Effect - Complex UI•
(iOS En) Mastering Switch Statements in Swift: Pattern Matching, Enums, and Real SwiftUI Examples•
(And En) What's New in Kotlin 2.3•
(Crs Ru) Бьем по рукам при помощи своего Dart-линтера•
(Crs Ru) Изоляционно-плагинная архитектура в Dart-приложениях, переносимость на Flutter•
(Crs En) Gradle 9 Will Break Your KMP Project - Here's the Full Migration Strategy•
(Dev Ru) Использование AI в процессах разработки•
(Dev Ru) Emacs в 2026 — Секретное оружие или старый хлам?•
(Dev En) How to create unique App Icon for your next Project•
(Dev En) RAG & MCP Fundamentals – A Hands-On Crash Course•
(Dev En) Lean Dynamic Programming with Animations – Full Course for Beginners•
(Dev En) How to Get Promoted as a Software Engineer: A Practical StrategyПрошлогодние видео:
•
(iOS Ru) SwiftUI: алхимия приложений — превращаем идеи в реальность•
(iOS Ru) Тактики ускорения билда: матиз, кобальт, камри 3.5•
(And Ru) Переезжаем с фрагментов на (De)compose•
(And Ru) Как устроена разработка в Яндекс.Клавиатуре•
(And Ru) Android + AI. Решаем задачи с умом•
(Dev Ru) Основы DevEx: ищем, куда исчезает время программистовPlease open Telegram to view this post
VIEW IN TELEGRAM
Почему ваш LazyColumn пропускает кадры
Статья объясняет, что проблемы с падением частоты кадров при использовании
В основе предлагаемых исправлений — четыре фундаментальные проблемы: неправильные ключи в
Статья: https://blog.devgenius.io/why-your-lazycolumn-drops-frames-part-1-quick-fixes-e6ccc53046bc
Платформа: Android
👍 если хотите перевод на русский
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Статья объясняет, что проблемы с падением частоты кадров при использовании
LazyColumn (и LazyRow) в Jetpack Compose часто происходят не из-за очевидных ошибок, а из-за тонких архитектурных ловушек, которые на первый взгляд выглядят безобидно. Автор показывает, что простое следование общим рекомендациям не всегда помогает: даже при правильном количестве перерисовок интерфейс всё ещё может подтормаживать на устройствах со средней производительностью. Ключ к решению заключается в том, чтобы понимать, что именно считается работой для Compose-движка, как малые оптимизации могут накопительно создавать большую нагрузку, и какие практики действительно снижают стоимость обновлений UI.В основе предлагаемых исправлений — четыре фундаментальные проблемы: неправильные ключи в
LazyColumn, нестабильные классы данных, которые приводят к лишней рекомпозиции, частые аллокации лямбд внутри списков и тяжёлые вычисления прямо в теле композаблов. Статья детально показывает, как сочетание этих факторов увеличивает объём работы, выполняемой при каждом кадре, и как их устранение (например, композитные ключи, аннотированные как @Immutable модели, ремемберинг лямбд и перенос предварительных вычислений в ViewModel) может существенно улучшить плавность прокрутки.Статья: https://blog.devgenius.io/why-your-lazycolumn-drops-frames-part-1-quick-fixes-e6ccc53046bc
Платформа: Android
👍 если хотите перевод на русский
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Copy-on-write позволит вам узнать ВСЕ о внутреннем устройстве Swift
Статья подробно разбирает механизм Copy-on-Write (CoW) в Swift, который является ключевой оптимизацией для работы с типами значений, такими как массивы и словари. Автор объясняет, что CoW позволяет избежать ресурсозатратного копирования данных при каждой передаче переменной или константы. Вместо создания немедленного дубликата в памяти, несколько переменных используют одну и ту же область данных в «куче» до тех пор, пока одна из них не попытается внести изменения. Только в момент модификации происходит реальное копирование, что позволяет Swift сочетать безопасность значимых типов с производительностью ссылочных.
Помимо теоретических основ, в материале рассматриваются внутренние аспекты реализации этого механизма и работа с памятью (стек против кучи). Автор демонстрирует, как разработчики могут самостоятельно внедрить CoW для собственных структур данных, используя приватный класс-обертку и системную функцию
Статья: https://levelup.gitconnected.com/copy-on-write-teaches-you-everything-about-swift-internals-f8807b58bfd6
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Статья подробно разбирает механизм Copy-on-Write (CoW) в Swift, который является ключевой оптимизацией для работы с типами значений, такими как массивы и словари. Автор объясняет, что CoW позволяет избежать ресурсозатратного копирования данных при каждой передаче переменной или константы. Вместо создания немедленного дубликата в памяти, несколько переменных используют одну и ту же область данных в «куче» до тех пор, пока одна из них не попытается внести изменения. Только в момент модификации происходит реальное копирование, что позволяет Swift сочетать безопасность значимых типов с производительностью ссылочных.
Помимо теоретических основ, в материале рассматриваются внутренние аспекты реализации этого механизма и работа с памятью (стек против кучи). Автор демонстрирует, как разработчики могут самостоятельно внедрить CoW для собственных структур данных, используя приватный класс-обертку и системную функцию
isKnownUniquelyReferenced. Этот подход позволяет вручную контролировать количество ссылок на объект и выполнять копирование только тогда, когда на данные ссылается более одного владельца. Таким образом, изучение CoW дает глубокое понимание того, как Swift оптимизирует управление памятью «под капотом».Статья: https://levelup.gitconnected.com/copy-on-write-teaches-you-everything-about-swift-internals-f8807b58bfd6
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1