AppFiles - Mobile Development
2.01K subscribers
2.56K photos
33 videos
8 files
3.45K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
Избегайте «when» — используйте полиморфизм

Операторы When часто считаются признаком плохого кода, и их следует избегать. Разберем пример.

Перевод: https://apptractor.ru/whenpol
Платформа: Kotlin/Android
👏: 523
👎1
VFont — библиотека, упрощающая работу с вариативными шрифтами в iOS-проектах. Вариативный шрифт состоит только из одного файла, который содержит все существующие стили для этого шрифта.

VFont на GitHub: https://github.com/dufflink/vfont
Платформа: iOS
⭐️: 17
Conferences4Hall - реальный проект Kotlin Multiplatform с приложением iOS, разработанным на Swift с помощью SwiftUI, приложением для Android, разработанным на Kotlin с помощью Jetpack Compose, и бэкендом на Kotlin, размещенным на AppEngine.

Conferences4Hall на GitHub: https://github.com/GerardPaligot/conferences4hall
Платформа: Kotlin Multiplatform/кроссплатформа
⭐️: 49
👍1
NotificationBanner — полностью настраиваемая и легкая библиотека, которая упрощает задачу отображения баннеров уведомлений и предупреждений в iOS-приложениях. Поддерживает iPhone, iPhoneX и iPad, смену ориентации, появление снизу или сверху, тактильный отклик, очередь уведомлений, настраиваемые цвета и заголовки с текстом, функции доступности.

NotificationBanner на GitHub: https://github.com/Daltron/NotificationBanner
Платформа: iOS
⭐️: 4.4K
ViMusic - Android-приложение для стриминга музыки из YouTube Music. Сделано с использованием Jetpack Compose. Играет в фоне, кеширует, ищет, показывает слова песен, создает плейлисты, есть светлая и темная темы.

ViMusic на GitHub: https://github.com/vfsfitvnm/ViMusic
Платформа: Android
⭐️: 138
👍2
Food Truck - мультиплатформенное приложение на SwiftUI от Apple с WWDC2022. Главная фишка - единая кодовая база и приложение сразу для Mac, iPad и iPhone. Кроме динамических макетов используется WeatherKit для показа погоды в нужном месте.

* Картинка не от приложения, для красоты.

Food Truck на GitHub: https://github.com/apple/sample-food-truck
Платформа: iOS
⭐️: 609
Начинаем работу с WeatherKit

Простая статья о том, как начать работу с новым API от Apple.

Перевод: https://apptractor.ru/wthrkt
Платформа: iOS
Проект на выходные :) RustDesk - удаленный рабочий стол, написанный на Rust. Альтернатива TeamViewer с открытым исходным кодом. Работает с Android (клиент написан на Flutter), Windows и Linux. Работает “из коробки”, настройки не требует.

RustDesk на GitHub: https://github.com/rustdesk/rustdesk
Платформа: удаленный рабочий стол
⭐️: 21.5K
Archives - пользовательский интерфейс для книжного приложения в стиле необрутализма с использованием Jetpack Compose и Kotlin.

Archives на GitHub: https://github.com/unaisulhadi/Archives
Платформа: Android
⭐️: 24
Курс «Паттерны и практики написания кода»

Этот курс от AvitoTech посвящен практикам и паттернам написания кода. Он будет полезен как начинающим, так и middle-разработчикам. Эти 12 видеороликов являются частью большого курса, созданного специально для студентов МАИ и успешно проведены в учебном заведении.

Видео: https://apptractor.ru/cdptrn
Платформа: программирование
👍1
Clean Architecture for SwiftUI - демо-проект приложения на SwiftUI + Combine с чистой архитектурой. Пример работы с персистентностью CoreData, сетью, внедрением зависимостей, полным покрытием модульными тестами и т.д. Есть MVVM-версия. В целом приложение использует REST API restcountries.com для отображения списка стран и сведений о них.

Clean Architecture на GitHub: https://github.com/nalexn/clean-architecture-swiftui
Платформа: iOS
⭐️: 3.5K
Swift Collections - новый пакет с открытым исходным кодом, ориентированный на расширение набора доступных структур данных в Swift. Это еще одно дополнение к языку от авторов Swift наряду с Swift Algorithms и Swift Numerics. Пока в библиотеке есть три структуры - Deque (аналог массива, поддерживающий эффективную вставку и удаление с обоих концов), OrderedSet (помесь массива и множества) и OrderedDictionary (упорядоченный словарь). Планируется еще десяток структур, но пока работа над ними только ведется.

Swift Collections на GitHub: https://github.com/apple/swift-collections
Платформа: iOS/Swift
⭐️: 2.3K
Начинаем работу над модуляризацией iOS-приложения

Есть много причин, по которым разработчики хотят, чтобы приложение было модульным: более быстрые инкрементальные сборки, разделение задач, изменения кода влияют на прозрачность и т.д. Но, к сожалению, нет конкретного способа сделать приложение модульным, и разработчики остаются наедине с площадкой для импровизации и кусочками головоломки странной формы, которые не обязательно подходят друг другу так, как ожидалось.

Перевод: https://apptractor.ru/iosmodl
Платформа: iOS
👏: 149
👍1
Just Listen - музыкальный плеер на основе Audius API. Снаружи все стандартные функции - поиск и создание плейлистов, прослушивание в фоне, избранное, темы и т.п. Внутри Kotlin Multiplatform Mobile, SQLDelight, Ktor, Jetpack Compose и Hilt.

Just Listen на GitHub: https://github.com/RLD-JL/Just-Listen
Платформа: Android
⭐️: 44
Рефакторинг приложения с десятилетним легаси за три месяца. Опыт Яндекс Музыки

Однажды ты просыпаешься и понимаешь: избыточность компонентов и рассинхронизация в твоём приложении начинают вредить пользователям. Однажды ты смотришь на написанное давным-давно ядро, плачешь горькими слезами, и приходит это некомфортное, но вместе с тем немного соблазнительное ощущение — что рефакторинг назрел. Добро пожаловать на экскурсию по рефакторингу Музыки, начиная с ресёрча и заканчивая эксплуатацией! Я покажу вам реальный код и постараюсь в деталях вспомнить, как мы формировали требования к механизмам и разрабатывали их, рисовали у себя в голове и в коде границы ядра, по одной переделывали очереди и внедряли то, что получилось, в SDK.

Статья: https://habr.com/ru/company/yandex/blog/671236/
Платформа: Android
⬆️: +29
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Проект на выходные - Koi Farm, кроссплатформенная игра (HTML, CSS и Javascript, издано в Steam, Itch.io и App Store) про выращивание парчовых карпов.

Статья про рендеринг рыб: https://jobtalle.com/digital_koi_breeding.html
Koi Farm на GitHub: https://github.com/jobtalle/koi
Платформа: кроссплатформа
⭐️: 310
SwiftNIO — это кроссплатформенный асинхронный event-driven сетевой фреймворк для быстрой разработки высокопроизводительных протокольных серверов и клиентов. Это как Netty, но для Swift.

SwiftNIO, по сути, низкоуровневый инструмент для создания высокопроизводительных сетевых приложений на Swift. Он особенно эффективен там, где использование модели параллелизма «поток на соединение» неэффективно или неприемлемо. Это распространенное ограничение при создании серверов, использующих большое количество соединений с относительно низким уровнем использования, таких как HTTP-серверы. SwiftNIO широко использует «неблокирующий ввод-вывод» - отсюда и название. Приложение не ожидает отправки или получения данных из сети, вместо этого SwiftNIO просит ядро уведомлять его, когда операции ввода-вывода могут выполняться без ожидания.

SwiftNIO на GitHub: https://github.com/apple/swift-nio
Платформа: iOS/Swift
⭐️: 7K
Lemuroid - открытый проект эмуляторов для Android. Поддерживает эмуляцию множества старых систем, от Atari 2600 через Game Boy и Sega Megadrive до PlayStation и Nintendo 3DS. Работает с Android TV, поддерживает геймпады, локальный мультиплеер, облачные сохранения и т.п.

Lemuroid на GitHub: https://github.com/Swordfish90/Lemuroid
Платформа: Android
⭐️: 710
Почему я бросил Android-разработку после 10 лет и чем планирую заниматься сейчас

В этой статье я расскажу о том, почему я навсегда ушел из Android-разработки, проработав в этой отрасли почти десять лет.

Перевод: https://apptractor.ru/android10
Платформа: Android
👏: 770
👍2🔥2👎1😁1
Swift Charts Examples - примеры кода для множества различных типов диаграмм и графиков, которые вы можете использовать в качестве вдохновения для своих собственных проектов. Сейчас в репозитории есть воссоздание тех графиков, которые Apple использовала на WWDC для презентации Swift Charts.

Swift Charts Examples на GitHub: https://github.com/jordibruin/Swift-Charts-Examples
Платформа: iOS
⭐️: 285