uz
Feedback
AppFiles - Mobile Development

AppFiles - Mobile Development

Kanalga Telegram’da o‘tish

Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.

Ko'proq ko'rsatish
2 163
Obunachilar
-224 soatlar
-17 kunlar
Ma'lumot yo'q30 kunlar
Postlar arxiv
Примеры использования File Templates для типовых сценариев, где требуется шаблонный код В предыдущей части мы описали проблем
Примеры использования File Templates для типовых сценариев, где требуется шаблонный код В предыдущей части мы описали проблему с необходимостью написания шаблонного кода и вариантами решения, познакомились с инструментом шаблонов File Templates и разобрали синтаксис написания шаблонов. В этой статье перейдем к практике — напишем шаблоны для кода типового экрана SomeFeature мобильного приложения. Статья: https://habr.com/ru/companies/tbank/articles/873234/ Платформа: Android

Blueprint - декларативный UI-конструктор для iOS, написанный на Swift. Blueprint предоставляет архитектуру, которая позволяет
Blueprint - декларативный UI-конструктор для iOS, написанный на Swift. Blueprint предоставляет архитектуру, которая позволяет декларативно определять иерархию пользовательского интерфейса с помощью значений (структур и перечислений Swift), отображать эту иерархию в приложении, обновлять иерархию при изменении состояния приложения (включая анимированные переходы). Используйте Blueprint в любом случае, когда вы хотите отобразить иерархию представлений, но не хотите управлять жизненным циклом представлений. Blueprint появился раньше SwiftUI и работает немного по-другому. Вы можете разместить BlueprintView в SwiftUI, чтобы встроить Blueprint в SwiftUI, а также использовать предоставленный ElementView для создания предварительных просмотров Blueprint в Xcode. Blueprint на GitHub: https://github.com/square/Blueprint Платформа: iOS ⭐️: 675

🎯 Множественное число в текстовых представлениях SwiftUI с помощью склонения Отображение чисел в текстах — мелочь, которая м
🎯 Множественное число в текстовых представлениях SwiftUI с помощью склонения Отображение чисел в текстах — мелочь, которая может сильно повлиять на качество пользовательского опыта. В фреймворке Foundation есть функция inflect для автоматического согласования грамматики, которая позволяет сократить количество строк локализации и упростить код. Статья: https://apptractor.ru/info/articles/mnozhestvennoe-chislo-v-tekstovyh-predstavleniyah-swiftui-s-pomoschyu-skloneniya.html Платформа: iOS

Распространенные ошибки в шаблоне UseCase для Android В Android-разработке есть две распространенные ошибки: • Внедрение стро
Распространенные ошибки в шаблоне UseCase для Android В Android-разработке есть две распространенные ошибки: • Внедрение строгого доступа ViewModel только к UseCase • Создание сопоставлений «один к одному» между методами Репозитория и UseCase Статья: https://apptractor.ru/info/articles/rasprostranennye-oshibki-v-shablone-usecase-dlya-android.html Платформа: Android

Спасение Legacy кода: укрощение контроллера представлений из тысячи строк У вас есть контроллер представления с более чем тыс
Спасение Legacy кода: укрощение контроллера представлений из тысячи строк У вас есть контроллер представления с более чем тысячей строк, и он является настоящим магнитом для ошибок. И у него всего 6 юнит-тестов, поэтому нет достаточной защиты, чтобы предотвратить появление новых. Код длинный, сложный и неловкий. Многие участки кода не поддаются тестированию. Что делать? Клиент, оказавшийся в подобной ситуации, обратился ко мне за помощью в спасении legacy кода в iOS-проекте. Статья: https://qualitycoding.org/legacy-code-rescue-thousand-line-view-controller/ Платформа: iOS

Kotlin Coroutines под капотом: отмена корутин В этой статье мы разберем такую сущность как Job и как на самом деле под капото
Kotlin Coroutines под капотом: отмена корутин В этой статье мы разберем такую сущность как Job и как на самом деле под капотом отменяются корутины. Статья: https://habr.com/ru/articles/873076/ Платформа: Android

ViTune - приложение для Android для бесперебойного потокового воспроизведения музыки. Работает с YouTube Music, воспроизводит
ViTune - приложение для Android для бесперебойного потокового воспроизведения музыки. Работает с YouTube Music, воспроизводит музыку с вашего устройства, играет в фоне и кэширует для офлайна, умеет искать песни, альбомы, видео и плейлисты, показывать новые композиции по жанру/настроению, работать со словами песен, нормализовать аудио и многое другое. ViTune на GitHub: https://github.com/25huizengek1/ViTune Платформа: Android ⭐️: 640

Используем диалог подтверждения в SwiftUI Экран confirmationDialog - это компонент SwiftUI, который представляет временное ди
Используем диалог подтверждения в SwiftUI Экран confirmationDialog - это компонент SwiftUI, который представляет временное диалоговое окно для подтверждения действия и предоставления набора связанных с ним опций. Он появляется в нижней части экрана и предлагает пользователям кнопки для выбора. Статья: https://apptractor.ru/info/articles/confirmationdialog.html Платформа: iOS

Корутины в Kotlin: делаем «Optimised Out» переменные видимым Отладка корутинов в Kotlin иногда может напоминать распутывание
Корутины в Kotlin: делаем «Optimised Out» переменные видимым Отладка корутинов в Kotlin иногда может напоминать распутывание паутины невидимых нитей — в буквальном смысле. Одна из распространенных ошибок, с которой сталкиваются разработчики — появление страшного сообщения «optimised out» при проверке переменных в приостановленной корутине. Статья: https://apptractor.ru/info/articles/korutiny-v-kotlin-delaem-optimised-out-peremennye-vidimymi.html Платформа: Android

Уменьшаем написание boilerplate с помощью File Templates Рассказываю о генерации файлов с boilerplate-кодом с помощью удобног
Уменьшаем написание boilerplate с помощью File Templates Рассказываю о генерации файлов с boilerplate-кодом с помощью удобного механизма задания File Templates в средах разработки Intellij. File Templates позволяет в пару кликов создавать несколько файлов с каким-либо boilerplate-кодом. Хоть статья приводит примеры создания File Templates для Android/Kotlin Multiplatform, она может быть полезна всем, кто работает в средах разработки от Intellij. Статья: https://habr.com/ru/companies/tbank/articles/872684/ Платформа: Android

Aspecto - это макет, который идеально сохраняет соотношение сторон каждого элемента. Фичи: работает для Jetpack Compose/Compo
Aspecto - это макет, который идеально сохраняет соотношение сторон каждого элемента. Фичи: работает для Jetpack Compose/Compose Multiplatform, располагает элементы для оптимального использования пространства, использует инкрементные вычисления для плавной работы, защищает от слишком высоких элементов, нарушающих макет, плавно адаптируется к различным размерам экрана. Aspecto на GitHub: https://github.com/vipulasri/aspecto Платформа: Android ⭐️: 30

Как новая функция Xcode 16 помогла избавиться от 66,000 строк кода В Xcode 16 недавно появилась функция buildable папок для о
Как новая функция Xcode 16 помогла избавиться от 66,000 строк кода В Xcode 16 недавно появилась функция buildable папок для организации файлов в проектах. Это помогает IDE избавиться от необходимости использования автоматически генерируемых ссылок на файлы в pbxproj для распознавания файлов. Теперь этот процесс происходит автоматически, и изменения отражаются в Xcode, когда файлы изменяются через Finder. Статья: https://apptractor.ru/info/articles/kak-novaya-funktsiya-xcode-16-pomogla-izbavitsya-ot-66-000-strok-koda.html Платформа: iOS

Управление событиями в ViewModel с помощью StateFlow, SharedFlow и Channel Сообщество Android-разработчиков уже долгое время
Управление событиями в ViewModel с помощью StateFlow, SharedFlow и Channel Сообщество Android-разработчиков уже долгое время ведёт жаркие споры о том, что лучше использовать в ViewModel для представления событий: StateFlow, SharedFlow или Channel. В этой статье мы разберёмся в различиях между этими тремя подходами и определим, какой из них наиболее подходит для ваших нужд. Статья: https://habr.com/ru/articles/872248/ Платформа: Android

CodeEditTextView - текстовый редактор (замена NSTextView) для отображения и редактирования кода. Особенности: базовое редакти
CodeEditTextView - текстовый редактор (замена NSTextView) для отображения и редактирования кода. Особенности: базовое редактирование текста, чрезвычайно быстрая начальная верстка, поддержка работы с большими документами, возможности настройки кодовых документов. CodeEditTextView на GitHub: https://github.com/CodeEditApp/CodeEditTextView Платформа: iOS ⭐️: 78

Чистим Android-проект просто и правильно При разработке Android-приложений дисковое пространство может быстро загрязняться ре
Чистим Android-проект просто и правильно При разработке Android-приложений дисковое пространство может быстро загрязняться результатами сборки, кэшами Gradle и конфигурационными файлами IDE. По умолчанию команда Android Studio «Build → Clean Project» удаляет не все. Могут накапливаться кэши, артефакты из модулей, остатки файлов Gradle и результаты сборки. В этой статье представлен один скрипт, который комплексно решает все эти проблемы, с фантастическим выводом консоли, показывающим использование пространства до и после. Рассматривается macOS/Linux (с помощью Bash) и Windows (с помощью Batch), а также проясняется, как Lite-чистка скрипта сравнивается с Build → Clean Project с точки зрения освобождаемого дискового пространства и объема проекта. Статья: https://apptractor.ru/info/articles/chistim-android-proekt-prosto-i-pravilno.html Платформа: Android

mpvKt - медиаплеер для Android, основанный на mpv-android и стремящийся предоставить более приятный пользовательский интерфей
mpvKt - медиаплеер для Android, основанный на mpv-android и стремящийся предоставить более приятный пользовательский интерфейс по сравнению с оригиналом. Предоставляет лучший UI, лучшее управление историей проигрывания, более простую кастомизацию, установки таймера сна, пресеты скорости воспроизведения, лучшую работу картинки-в-картинке. mpvKt на GitHub: https://github.com/abdallahmehiz/mpvKt Платформа: Android ⭐️: 712

Что такое Lazy Variables в Swift Lazy Variables в Swift — это свойства, значение которых не инициализируется до тех пор, пока
Что такое Lazy Variables в Swift Lazy Variables в Swift — это свойства, значение которых не инициализируется до тех пор, пока они не будут использованы. Это полезно в тех случаях, когда вычисление значения свойства является затратным по времени или ресурсам, и вы хотите избежать его выполнения до тех пор, пока это не потребуется. Статья: https://apptractor.ru/info/articles/lazy-variables.html Платформа: iOS

Giffy - клиентское приложение для Giphy, созданное с использованием таких интересных технологий для iOS, как TCA (The Composa
Giffy - клиентское приложение для Giphy, созданное с использованием таких интересных технологий для iOS, как TCA (The Composable Architecture by Point-Free), Swinject, SwiftUI, Чистая архитектура с подходом Generic Protocol, модуляризация SPM и XcodeGen. Giffy на GitHub: https://github.com/uwaisalqadri/Giffy Платформа: iOS ⭐️: 25