fa
Feedback
AppFiles - Mobile Development

AppFiles - Mobile Development

رفتن به کانال در Telegram

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

نمایش بیشتر
2 163
مشترکین
-224 ساعت
-17 روز
اطلاعاتی وجود ندارد30 روز
آرشیو پست ها
SymbolPicker - простой и кроссплатформенный выбор символов SF Symbols для SwiftUI. Поддерживает iOS, macOS, watchOS, tvOS и д
SymbolPicker - простой и кроссплатформенный выбор символов SF Symbols для SwiftUI. Поддерживает iOS, macOS, watchOS, tvOS и даже visionOS. SymbolPicker на GitHub: https://github.com/xnth97/SymbolPicker Платформа: iOS ⭐️: 181

photo content

Рисуем карты с помощью Swift Charts Артем Новичков, iOS-разработчик в Welltory, поделился интересной функцией Swift Charts —
Рисуем карты с помощью Swift Charts Артем Новичков, iOS-разработчик в Welltory, поделился интересной функцией Swift Charts — оказывается, с их помощью можно рисовать карты.
Конечный результат не идеален, но я обнаружил много интересных и неочевидных моментов, которые могут быть полезны в будущем. У Swift Charts большой потенциал. Диаграммы могут быть интерактивными; мы можем усовершенствовать приведенный выше пример и добавить выбор региона. Более того, Swift Charts поддерживает доступность, и мы можем добавить VoiceOver, чтобы сделать карту более доступной.
Статья: https://apptractor.ru/info/articles/risuem-karty-s-pomoschyu-swift-charts.html Платформа: iOS

Плагины: автоматизация разработки в продуктах JetBrains (на примере Android Studio) Плагины для продуктов JetBrains, включая
Плагины: автоматизация разработки в продуктах JetBrains (на примере Android Studio) Плагины для продуктов JetBrains, включая Android Studio, позволяют расширять функциональность IDE, улучшая процесс написания, отладки и тестирования кода. Они помогают автоматизировать рутинные задачи, интегрировать сторонние инструменты и адаптировать среду под индивидуальные потребности разработчика. В этой статье мы рассмотрим, как плагины упрощают работу в Android Studio, ускоряют разработку и делают процесс кодинга более продуктивным. Так, например, можно написать плагин для автоматического форматирования и инспекции кода, для генерации шаблонов, таких как геттеры, сеттеры, шаблоны классов и XML‑разметки и тд. Возможностей и идей много, много всего уже реализовано, но не все уже созданное может подойти именно под ваши задачи и стиль кода, так что имеет смысл уметь писать собственные плагины. Статья: https://habr.com/ru/articles/878870/ Платформа: Android

Compose Swipeable Cards - легкая современная библиотека для Android, обеспечивающая плавное пролистывание карточек в стиле Tinder с помощью Jetpack Compose. Фичи: • Плавная, основанная на физике анимация пролистывания • Полностью настраиваемое содержимое карточек • Свайпы вправо и влево • Эффект сложенных карт • Интерактивное управление жестами • Простая интеграция • Легкий вес с минимальным количеством зависимостей • Создано с помощью Jetpack Compose Compose Swipeable Cards на GitHub: https://github.com/smartword-app/compose-swipeable-cards Платформа: Android ⭐️: 28

⚡️Вдохни жизнь в свои приложения с помощью анимаций в SwiftUI! Анимации — это не просто красота, а способ улучшить пользовате
⚡️Вдохни жизнь в свои приложения с помощью анимаций в SwiftUI! Анимации — это не просто красота, а способ улучшить пользовательский опыт. Хочешь узнать, как простыми решениями делать интерфейсы, которые захватывают внимание и радуют глаз? 5 февраля в 20:00 мск на открытом вебинаре ты узнаешь: • Как создавать базовые анимации в SwiftUI. • Как переходить к комплексным анимациям для более впечатляющих эффектов. • Простые практики для улучшения эстетики твоих приложений. Регистрируйся на открытый урок в преддверие старта курса «iOS Developer». Все участники получат скидку на обучение! 👉Узнать больше: https://otus.pw/HHGI/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Потоки под капотом: как работают многопоточность и синхронизация В решении рабочих задач и прохождении собеседований часто за
Потоки под капотом: как работают многопоточность и синхронизация В решении рабочих задач и прохождении собеседований часто затрагиваются вопросы, связанные с многопоточностью и самими потоками, а также с необходимостью их синхронизации. Однако что происходит за кулисами этих процессов? Как функционирует механизм потоков изнутри? В данной статье мы рассмотрим детали этой темы, а именно: • проанализируем работу потоков; • выявим скрытые механизмы, обеспечивающие их функционирование; • определим, какую пользу практикующим iOS‑разработчикам приносит понимание внутреннего устройства потоков. Статья: https://habr.com/ru/companies/kts/articles/875096/ Платформа: iOS

Swift продолжает набирать популярность как кроссплатформенный язык, поддерживающий самые разные сценарии использования, с под
Swift продолжает набирать популярность как кроссплатформенный язык, поддерживающий самые разные сценарии использования, с поддержкой различных встраиваемых устройств, форм-факторов, охватывающих от носимых устройств до серверов, и широкого спектра операционных систем. По мере развития Swift целесообразно инвестировать в соответствующие кросс-платформенные инструменты сборки, которые обеспечивают мощный, последовательный и гибкий опыт во всей экосистеме. В качестве основополагающего шага в этой новой главе технологий сборки Swift, сегодня Apple открыла доступ к Swift Build, мощному и расширяемому механизму сборки, который предоставляет набор правил сборки для создания проектов Swift. Swift Build - это движок, используемый в Xcode, который поддерживает миллионы приложений в App Store, а также внутренний процесс сборки собственных операционных систем Apple. В репозиторий с открытым исходным кодом также включена поддержка таргетинга для Linux и Windows. Swift Build - это высокоуровневая система сборки, основанная на llbuild с расширенной поддержкой Swift. Она используется в Xcode для сборки проектов Xcode и Swift Package Manager, а также в Swift Playground. Swift Build предоставляет такие возможности, как: • Надежная интеграция с компилятором Swift для надежной и эффективной координации сборки Swift-проектов • Поддержка широкого спектра типов продуктов, включая библиотеки, инструменты командной строки и GUI-приложения с расширенными опциями конфигурации сборки • Оптимизация графа сборки, позволяющая максимально использовать параллелизм при сборке Swift- и C-кода Swift Build на GitHub: https://github.com/swiftlang/swift-build Платформа: iOS ⭐️: 990

Видео и подкасты за неделю на @AppFiles(iOS Ru) Как мы адаптировали проект к Strict Concurrency Checking — Swift 6(iOS En) Animated OTP Code TextField | SwiftUI(iOS En) Manual View Orientation Control | Orientation Lock | SwiftUI(iOS En) The easiest way to use SwiftUI in a UIKit app(iOS En) Reorder & Move Cards Between Sections with Drag & Drop in SwiftUI + Core Data(iOS En) SceneStorage(And En) Integrate Google Pay with Jetpack Compose on Android(And En) Dagger-Hilt vs. Koin vs. Manual Dependency Injection(And En) Efficient IO With Buffered Reading & Writing In Kotlin(And En) Arrow for Everyone(Crs En) Multi-Module KMP: The Ultimate Guide to Resource Sharing(Dev Ru) Проектирование и запуск разработки(Dev Ru) Как не уронить прод: Даниэль Халиулин про стабильный софт, качество и разработку(Dev En) LLM Course – Build a Semantic Book Recommender (Python, OpenAI, LangChain, Gradio)(Mrk Ru) Тренды маркетинга мобильных приложений в 2025 году Вспоминаем, что было год назад: • (iOS Ru) Как избежать утечек памяти при использовании Task, Combine, CurrentValueSubject и AsyncStream(And Ru) Построение multi-app архитектуры(And Ru) Старт карьеры в Android-разработке до 18 лет(And Ru) Compose Navigation Codelab: проходим кодлаб от Google(Dev Ru) Найти работу в кризис: джун, мидл и сеньёр(Dev Ru) Кем вы видите себя в компании через 5 лет? Отвечает Head of Mobile

ComposableMemes - приложение Compose Multiplatform для просмотра и создания мемов. Есть коллекция мемов, есть продвинутый ред
ComposableMemes - приложение Compose Multiplatform для просмотра и создания мемов. Есть коллекция мемов, есть продвинутый редактор для их создания, возможность сохранить свое творение на устройстве или поделиться им с миром, поддержка Android, iOS & Web (WASM). ComposableMemes на GitHub: https://github.com/mvk059/ComposableMemes Платформа: Android/кроссплатформа ⭐️: 12

RouterNavigation: практический подход к упрощению навигации в iOS Статья предлагает эффективный метод управления навигацией в
RouterNavigation: практический подход к упрощению навигации в iOS Статья предлагает эффективный метод управления навигацией в iOS-приложениях. Автор вводит концепцию "RouterNavigation", направленную на упрощение и структурирование навигационных процессов, что особенно актуально для крупных проектов с множеством экранов и сложными переходами. В статье рассматриваются ключевые концепции, такие как маршрутизация (routing), разделение ответственности и инверсия управления. Предлагаемый подход подразумевает использование роутера для управления переходами между экранами, что позволяет отделить логику навигации от пользовательского интерфейса. Это способствует повышению модульности и упрощает тестирование компонентов. Для iOS-разработчиков данный подход может быть полезен тем, что он обеспечивает более чистую и поддерживаемую архитектуру приложения. Использование роутера позволяет централизовать управление навигацией, снижая связанность между компонентами и облегчая внесение изменений в навигационную логику без необходимости модификации отдельных экранов. Это особенно важно при масштабировании приложений и работе в больших командах. Статья: https://medium.com/@francescostabile/routernavigation-a-practical-approach-to-simplify-ios-navigation-2e6aca4a84a0 Платформа: iOS

Как создать водяной знак в Jetpack Compose Статья посвящена созданию настраиваемого и многократно используемого водяного знак
Как создать водяной знак в Jetpack Compose Статья посвящена созданию настраиваемого и многократно используемого водяного знака в приложениях Android с использованием Jetpack Compose. Автор подробно описывает процесс разработки компонента водяного знака, который можно легко интегрировать в различные части приложения, обеспечивая единообразный стиль и защиту контента. В статье рассматриваются ключевые концепции Jetpack Compose, такие как создание пользовательских компонентов, управление состоянием и применение модификаторов для стилизации элементов интерфейса. Автор демонстрирует, как с помощью Compose можно создавать гибкие и переиспользуемые UI-элементы, которые адаптируются к различным требованиям дизайна и функциональности. Эта статья предоставляет практический пример использования Jetpack Compose для создания настраиваемых компонентов. Понимание того, как создавать и внедрять такие элементы, позволяет улучшить структуру и читаемость кода, а также ускорить процесс разработки за счет повторного использования компонентов. Кроме того, применение водяных знаков помогает защитить контент приложения и поддерживать его фирменный стиль. Статья: https://medium.com/@kappdev/how-to-create-a-reusable-premium-watermark-in-jetpack-compose-83d79e9ce7c3 Платформа: Android

Как писать эффективную документацию в Xcode Эффективная документация в Xcode — ключевой аспект разработки на Swift. Используя
Как писать эффективную документацию в Xcode Эффективная документация в Xcode — ключевой аспект разработки на Swift. Используя инструменты, такие как Quick Help и комментарии в формате Markdown, разработчики могут создавать ясную и структурированную документацию. Хотя это требует времени, такие вложения способствуют лучшему пониманию кода и облегчают его поддержку. В Xcode можно автоматически добавить шаблон комментария, выделив функцию или метод и нажав сочетание клавиш Option (Alt) + Command (⌘) + /. Это создаст структуру, в которую можно добавить описание, параметры и возвращаемые значения. После написания комментариев можно сгенерировать документацию, выбрав в Xcode пункт меню Product > Build Documentation. Это создаст подробную документацию, которую можно просматривать непосредственно в Xcode или экспортировать для дальнейшего использования. Статья: https://medium.com/icommunity/how-to-write-effective-swift-documentation-in-xcode-e34793463cb9 Платформа: iOS

Why Not Compose! - коллекция анимаций, композиций и пользовательских интерфейсов, сделанных с использованием Jetpack Compose. Можно назвать это поваренной книгой Jetpack Compose, витриной или игровой площадкой. Фичи: MVVM, Navigation Component, Hilt, поддержка темного режима, Material 3, Gradle Kotlin DSL, CI/CD. Что есть: счетчики, работа с Lottie, выбор изображения и его обрезка, работа с правами, извлечение данных и пейджинг, крестики нолики, работа с ExoPlayer, глубокие ссылки и многое другое. Why Not Compose! на GitHub: https://github.com/ImaginativeShohag/Why-Not-Compose Платформа: Android ⭐️: 586

Путь к стабильности: как мы снизили потребление оперативной памяти в iOS-приложении Чтобы избежать перегрузки системы и краше
Путь к стабильности: как мы снизили потребление оперативной памяти в iOS-приложении Чтобы избежать перегрузки системы и крашей приложения, мы решили разработать инструмент для мониторинга памяти. Его задача — отслеживать потребление ресурсов на этапе тестирования и заранее предупреждать разработчиков о потенциальных перегрузках, чтобы проблемный код не попал к пользователям. Статья: https://habr.com/ru/companies/aliexpress_russia/articles/877058/ Платформа: iOS

Корутины Kotlin в продакшене: уроки и подводные камни Запустив в прод корутины, наша команда столкнулась с многочисленными пр
Корутины Kotlin в продакшене: уроки и подводные камни Запустив в прод корутины, наша команда столкнулась с многочисленными проблемами, которые не были сразу очевидны из документации. Несмотря на то, что в теории корутины элегантны, их практическая реализация сопряжена с несколькими нюансами, которые могут привести к серьезным проблемам. Вот что мы узнали, пройдя этим трудным путем. Статья: https://apptractor.ru/info/articles/korutiny-kotlin-v-prodakshene-uroki-i-podvodnye-kamni.html Платформа: Android

SwiftGPT - библиотека от @ios_appdev для интеграции возможностей ChatGPT в iOS/macOS/Linux проекты. Особенности: • Совместимо
SwiftGPT - библиотека от @ios_appdev для интеграции возможностей ChatGPT в iOS/macOS/Linux проекты. Особенности: • Совместимость с официальным OpenAI API: интерфейс основан на стилях OpenAI. • Поддержка Swift 6 и Swift Concurrency. • Мультиплатформенность: работает на всех платформах Apple (iOS, macOS, watchOS, tvOS) и даже на Linux. Основные функции: • Поддержка Chat Completions (генерация текста) • В планах: Assistants API, Text-to-Speech, Text Transcriptions, Image generation и др. • Возможность указать URL для запросов (актуально для РФ, когда делаешь свой прокси) Пример использования:
import SwiftGPT

// Установка API key
OpenAI.Configuration.apiKey = .apiKey("your-api-key")

Task {
    // создание сессии
    let chat = OpenAI.Chat()
    // запрос
    let response = try await chat.completions(prompt: "Как погода сегодня?")
    print("Ответ: \(response)")
}
SwiftGPT на GitHub: https://github.com/DobbyWanKenoby/SwiftGPT Платформа: iOS ⭐️: 11

SwiftGPT - библиотека от @ios_appdev для интеграции возможностей ChatGPT в iOS/macOS/Linux проекты. Особенности: • Совместимость с официальным OpenAI API: интерфейс основан на стилях OpenAI. • Поддержка Swift 6 и Swift Concurrency. • Мультиплатформенность: работает на всех платформах Apple (iOS, macOS, watchOS, tvOS) и даже на Linux. Основные функции: • Поддержка Chat Completions (генерация текста) • В планах: Assistants API, Text-to-Speech, Text Transcriptions, Image generation и др. • Возможность указать URL для запросов (актуально для РФ, когда делаешь свой прокси) Пример использования:
import SwiftGPT

// Установка API key
OpenAI.Configuration.apiKey = .apiKey("your-api-key")

Task {
    // создание сессии
    let chat = OpenAI.Chat()
    // запрос
    let response = try await chat.completions(prompt: "Как погода сегодня?")
    print("Ответ: \(response)")
}
SwiftGPT на GitHub: https://github.com/DobbyWanKenoby/SwiftGPT Платформа: iOS ⭐️: 11

Удаленная локализация в приложениях Jetpack Compose В приложениях Android эти статические строки обычно определяются в файле
Удаленная локализация в приложениях Jetpack Compose В приложениях Android эти статические строки обычно определяются в файле strings.xml и хранятся локально. При необходимости изменений они обновляются в коде и выпускаются в следующей версии приложения. Можно сделать удаленное хранение строк, однако при этом возникают уникальные проблемы, такие как обеспечение эффективного обновления, поддержание согласованности данных и быстрое отображение обновленного текста для пользователей. В этой статье мы рассмотрим реальное решение по управлению удаленной локализацией в приложениях Jetpack Compose. Статья: https://apptractor.ru/info/articles/udalennaya-lokalizatsiya-v-prilozheniyah-jetpack-compose.html Платформа: Android

Меняем изображений у кнопки SwiftUI при нажатии Как изменить изображение, которое показывает кнопка SwiftUI, во время нажатия
Меняем изображений у кнопки SwiftUI при нажатии Как изменить изображение, которое показывает кнопка SwiftUI, во время нажатия пользователем? В этой статьи простой код, который меняет иконку при нажатии. Статья: https://apptractor.ru/info/articles/menyaem-izobrazheniy-u-knopki-swiftui-pri-nazhatii.html Платформа: iOS