AppFiles - Mobile Development
1.99K subscribers
2.55K photos
33 videos
8 files
3.43K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
Как в Swift Package Manager сэкономить гигабайты трафика и места на диске

Одним из преимуществ CocoaPods по сравнению с SPM является то, что проверки зависимостей хранятся вместе с проектом непосредственно в репозитории. Это позволяет безболезненно запускать проект из любого коммита и не тратить время на CI для загрузки зависимостей и их разрешения.

В этой статье я покажу, как использовать SPM для хранения зависимостей в репозитории и реализовать это лучше, чем в CocoaPods.

Статья: https://apptractor.ru/info/articles/kak-v-swift-package-manager-sekonomit-gigabayty-trafika-i-mesta-na-diske.html
Платформа: iOS
Design Patterns In Swift - масса паттернов проектирования, реализованных на Swift 5.0. Сделаны 11 поведенческих паттернов проектирования (Цепочка обязанностей, Обозреватель и т.п.), 6 креативных (Фабричный метод, Синглтон и т.п.) и 8 структурных (Адаптер, Декоратор и т.д.).

Design Patterns In Swift на GitHub: https://github.com/ochococo/Design-Patterns-In-Swift
Платформа: iOS/программирование
⭐️: 14.4K
👍5
SQLDelight генерирует типобезопасные Kotlin API из SQL-операторов. Он проверяет схему, операторы и миграции во время компиляции и предоставляет такие возможности IDE, как автодополнение и рефакторинг, которые упрощают написание и поддержку SQL. Только что вышла версия 2.0.

SQLDelight на GitHub: https://github.com/cashapp/sqldelight
Сайт: https://cashapp.github.io/sqldelight/
Платформа: Android
⭐️: 5.4K
Занимательные флаги на Swift

В сегодняшней статье мы рассмотрим, как использовать UIBezierPath для рисования фигур. Фактически, мы будем процедурно рисовать наш национальный флаг.

Статья: https://apptractor.ru/flag-swift
Платформа: iOS
This media is not supported in your browser
VIEW IN TELEGRAM
Кастомизация Android-приложения с помощью тем

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

Статья: https://medium.com/revolut/customising-android-app-ui-with-themes-a251e42b1451
Платформа: Android
👍2
Iosevka - семейство шрифтов с открытым исходным кодом, sans-serif + slab-serif, monospace + quasi-proportional, предназначенное для написания кода, использования в терминалах и подготовки технической документации. Все версии включают одинаковый набор символов: латинские буквы, греческие (включая политонику), некоторые кириллические буквы, символы IPA, а также распространенные символы пунктуации и прочие символы.

Iosevka на GitHub: https://github.com/be5invis/Iosevka
Платформа: программирование
⭐️: 16.6K
Видео и подкасты за неделю

• (iOS Ru) Distributed actors и где они обитают
• (iOS En) TipKit - iOS 17 - SwiftUI
• (iOS En) OSLog and Logger
• (iOS En) Radial Layout With Gestures - SwiftUI
• (iOS En) Inout Parameters and Mutating Functions
• (iOS En) How to master Combine like a Pro – The Basics
• (iOS En) SwiftUI NavigationStack Hero Animation Effect - Custom Matched Geometry Effect
• (And Ru) Секретная фича в Android Studio: логируем, пока дебажим, не меняя сам код
• (And En) Now in Android: 87 - Android 14 Beta 4, Google Play policy update, and Compose Performance
• (And En) What's new in Android Studio - Giraffe
• (And En) Text Fields - UX With Material3
• (And En) Buttons - UX With Material3
• (Crs Ru) Кодогенерация для Flutter: что, как и зачем
• (Crs En) Build an iOS & Android app in 100% Kotlin with Compose Multiplatform
• (Dev Ru) Ozon Tech Intro Meetup: как работают системы поиска, рекомендаций и рекламы
• (Dev Ru) На шаг ближе к метавселенной, или Как мы оживили аватары пользователей в VK Звонках
• (Dev Ru) Как сделать аналог Firebase App Distribution
• (Dev Ru) Алгоритмическое собеседование в Яндекс в прямом эфире
• (Dev Ru) Постоянные отказы на собеседованиях: что мне делать
• (Dev En) The ultimate guide to A/B testing


Посмотрели какое-то другое интересное видео? Отправьте боту🧑🏻‍💻
Цель Compose Adaptive Scaffold - облегчить написание приложений Jetpack Compose, поддерживающих большие экраны и складные устройства.

В основе библиотеки лежит идея двух панелей, называемых body и secondary body. Для небольших экранов предусмотрены альтернативные варианты (или вариации), называемые small body и small secondary body (последняя опциональна). В зависимости от компоновки экрана пары body и small body, а также secondary body и small secondary body могут даже совпадать. Под капотом Compose Adaptive Scaffold использует Jetpack WindowManager для обеспечения полной поддержки больших экранов. Просто предоставьте композабл body и secondary body - все остальное будет обработано автоматически.

Compose Adaptive Scaffold на GitHub: https://github.com/tkuenneth/compose_adaptive_scaffold
Платформа: Android
⭐️: 74
Что порой кроется за «успехом»

Хочу рассказать вам свой путь в поиске новой работы в 2023 году и поддержать тех, кто сейчас проходит через это. За 6 месяцев я собеседовался в 25 компаний, прошел 54 этапа (а какие-то не прошел), получил 2 оффера и в итоге один из них принял. Если вы сейчас в поиске работы, эта статья будет для вас глотком свежего воздуха. Если же вы матерый специалист, устраивающий процессы онбординга в своей компании, вам это может быть интересно с другой стороны.

Статья: https://habr.com/ru/articles/751284/
Платформа: Android/работа
❤‍🔥1
Разбираю Swift Runtime на детали

Наверное, вы уже использовали словосочетание «Библиотека Runtime». Можно предположить, что это и есть какая-то библиотека, а значит — у неё есть исходный код. Очевидно, что он находится в репозитории Swift.

Идём туда и видим кучу-кучу-кучу каталогов файлов. Когда я туда попал, почувствовал себя как маленький малыш Йода — стало немножко страшно и неуютно.

Статья: https://habr.com/ru/companies/alfa/articles/750348/
Платформа: iOS
iTorrent - torrent-клиент для iOS. Умеет скачивать файлы в фоновом режиме, последовательно загружать (можно смотреть фильмы в процессе загрузки), сохранять файлы в приложении Файлы (iOS 11+), отправлять уведомления при окончании загрузки и многое другое.

iTorrent на GitHub: https://github.com/XITRIX/iTorrent
Платформа: iOS
⭐️: 1.5K
👍4
Прикладное adb (Android Debug Bridge) для зумеров

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

В этой инструкции хочу рассказать о командах adb, которые использовать легче, чем делать то же самое через UI Android Studio или настройки Android.

Основная задача — показать возможности adb, которые избавят от рутинных шагов при разработке/отладке. Например, позволят быстро переключать светлую тему на темную.

Статья: https://habr.com/ru/articles/751092/
Платформа: Android
Добавляем обучающие моменты в приложения с помощью TipKit

Сделав в прошлом несколько систем онбординга, я с нетерпением ждал появления этой функции на WWDC 2023. Я был несколько разочарован, когда версия за версией Xcode не содержал фреймворка TipKit. К счастью, в Xcode 15 beta 5 (выпущенной вчера вечером) появился соответствующий фреймворк и документация, позволяющие мне интегрировать подсказки в собственные приложения.

Статья: https://apptractor.ru/info/articles/tipkit.html
Платформа: iOS
Stable Diffusion AI - это простое в использовании приложение, позволяющее быстро генерировать изображения из текста или других изображений с помощью всего нескольких щелчков мыши. С помощью этого приложения можно взаимодействовать с собственным сервером (можно использовать две серверные среды, Txt2Img и Img2Img модели) и генерировать высококачественные изображения за считанные секунды.

Stable Diffusion AI на GitHub: https://github.com/ShiftHackZ/Stable-Diffusion-Android
Платформа: Android
⭐️: 153
1
Лучший спутник в вашем творческом процессе: Android Studio Bot VS ChatGPT для разработчиков

Недавно Google анонсировала Android Studio Bot — нового чат‑помощника для нативной андроид разработки. Кроме генерации ответов на вопросы он обладает дополнительным набором фичей, предназначеннных на порядок облегчить работу разработчику. В этой статье мы разберём, на что способен новый инструмент от Google, сравним его с нашумевшим ChatGPT и выясним, сделает ли он вас эффективнее при решении повседневных задач.

Статья: https://habr.com/ru/companies/joydev/articles/743004/
Платформа: Android
visionOS 30 Days - набор из 30 уроков разработки для visionOS. Текстов и описаний почти нет, есть видео и исходники, сам автор “живет” и постит их в Twitter.

visionOS 30 Days на GitHub: https://github.com/satoshi0212/visionOS_30Days
Платформа: iOS
⭐️: 638
Оптимизация анимации на Compose: крутим лоадеры, ищем неочевидные функции

Android-разработчик red_mad_robot Серёжа Чумиков рассказывает о том, как сделать классную анимацию, не перегрузив смартфон, почему ей не нужна рекомпозиция и как её избежать.

Статья: https://habr.com/ru/companies/redmadrobot/articles/751976/
Платформа: Android
Улучшаем UX: cоздание аватаров по умолчанию в SwiftUI

Мы часто сталкиваемся с необходимостью отображения аватаров пользователей в наших приложениях. Однако работа с аватарами по умолчанию для пользователей, не имеющих фотографий профиля, может быть утомительной и повторяющейся. В этой статье рассматривается простое и эффективное решение этой проблемы с помощью SwiftUI и расширений Swift.

Статья: https://thecuriousdev.medium.com/elevate-user-experience-create-default-avatars-in-swiftui-177117000c0e
Платформа: iOS
AI Companion App - это обучающий стек для создания и размещения AI-компаньонов, с которыми можно общаться в браузере или даже по SMS. Он позволяет определить личность и предысторию собеседника, а также использует векторную базу данных с поиском сходства для извлечения данных и подсказок, что делает беседу более глубокой. Кроме того, он обеспечивает некоторую память разговоров, сохраняя их в очереди и включая в подсказки.

В настоящее время он содержит собеседников как на ChatGPT, так и на Vicuna, размещенной в Replicate.

Существует множество вариантов использования этих собеседников - романтические (AI-подруги/парни), дружеские, развлекательные, обучающие и т.д. Вы можете направить своего компаньона к идеальному варианту использования с помощью написанной вами предыстории и выбранной вами модели.

Этот проект задуман исключительно как учебник для разработчиков и стартовый стек для тех, кому интересно, как создаются чат-боты. Если вас интересует, как выглядит готовая платформа с открытым исходным кодом, обратите внимание на Steamship. Если же вам интересно, как выглядят ведущие платформы для чат-ботов с искусственным интеллектом, обратите внимание на Character.ai.

AI Companion App на GitHub: https://github.com/a16z-infra/companion-app
Платформа: разработка/ИИ
⭐️: 5K