AppFiles - Mobile Development
رفتن به کانال در Telegram
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
نمایش بیشتر2 171
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+37 روز
+730 روز
آرشیو پست ها
Видео и подкасты за неделю
•
(iOS En) Видео iOS Conf SG 2023
• (iOS En) I built a mobile app without experience in just one day using AI
• (iOS En) Understanding the Role of Expressions in Swift
• (iOS En) Meet the New Native Video Picker API For SwiftUI
• (And Ru) Как научиться программировать под андроид с нуля
• (And Ru) Как уменьшить размер Android приложения
• (And Ru) Оптимизация Compose
• (And En) What's new in Android Studio - Flamingo
• (And En) CameraX Foundations
• (And En) Building Your First Wear OS App with Jetpack Compose
• (And En) Pagination from Remote API & Local Cache Using Paging3, Compose and Clean Architecture
• (Crs Ru) Видео Flutter Weekend Study
• (Dev Ru) Mobile SRE: что перезагружать, когда перезагружать нечего
• (Dev Ru) DivKit. Server Driven UI. Ольга Ким. Яндекс
• (Dev Ru) Трудности архитектуры, платформ и их изучения
• (Dev En) Being Successful with Open Source in Game Development
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻Вышла стабильная версия Android Studio Flamingo
Этот выпуск включает улучшения, помогающие создавать до пикселя идеальный пользовательский интерфейс с помощью Live Edit, шаблоны проектов с Jetpack Compose и Material 3, новые функции, помогающие инспектировать ваше приложение, обновления IntelliJ, App Quality Insights и многое другое.
Анонс: https://android-developers.googleblog.com/2023/04/android-studio-flamingo-is-stable.html
Платформа: Android
Pocket Shop - мобильный магазин, выполненный в лучших правилах MAD. Внутри Kotlin, Coroutines + Flow, Jetpack, MVVM, Retrofit2 & OkHttp3, Moshi и все остальные инструменты.
Pocket Shop на GitHub: https://github.com/AYOMITIDE-OAJ/pocketshop
Платформа: Android
⭐️: 1
Сам себе экосистема: Как я адаптировал старый смартфон под современные реалии и написал клиенты нужных мне сервисов
Время неумолимо бежит вперед: выходят новые гаджеты, постепенно заменяя старые, превращая их в тыкву или в лучшем случае, в «тапочек» для звонков. Сейчас смартфоны стали практически одинаковы во всем: дисплей на всю площадь передней панели, почти полное отсутствие аппаратных кнопок, беспроводная зарядка… Это всё, конечно, здорово, но ведь иногда так хочется взять в руки старый, но такой необычный в наше время QWERTY-смартфон и попытатьфся его использовать как основной, да и цены на них могут приятно удивить: БУ девайс можно купить за несколько сотен рублей (~5-10$). Одна проблема — клиенты приложений на версии Android 1.6-2.0 безбожно устарели и давно не работают. Но иногда желание воскресить старый девайс превыше потребительского качества и тут я пришёл к мысли… а почему бы не написать с нуля свои клиенты популярных приложений? ВК с музыкой, YouTube, трекинг посылок. Так я и сел писать необходимые в повседневной жизни приложения, с нуля, на голом API Android, без каких либо фреймворков (и даже AppCompat).
Статья: https://habr.com/ru/companies/timeweb/articles/726086/
Платформа: Android
Repost from Код Воробья для iOS разработчиков
В 💻 Xcode 14 прокачали автокомплит - инициализаторы, Codable, форматирование и другое. В видео наглядно, как это работает.
Как использовать If Case Let в Swift и не сойти с ума
Например, если у вас есть коробка конфет и вы хотите проверить, есть ли в ней карамель, вы можете использовать для этого "if case let".
Статья (
En): https://apptractor.ru/if-case-let-in-swift
Платформа: iOS5 способов подготовить ваше приложение к выходу Android Studio Flamingo
При обновлении до Android Studio Flamingo и Android Gradle Plugin 8.0 необходимо обновить файлы сборки приложений, чтобы учесть пять важных изменений в поведении сборки.
Статья: https://apptractor.ru/5-ways-to-prepare-your-app
Платформа: Android
MarkdownUI - это мощная библиотека для отображения и настройки Markdown-текста в SwiftUI. Она совместима с GitHub Flavored Markdown Spec и может отображать изображения, заголовки, списки, кавычки, блоки кода, таблицы, а также стилизованный текст и ссылки.
MarkdownUI предлагает понятные функции создания тем для настройки отображения текста. Вы можете использовать встроенные темы, создавать свои собственные или переопределять стили текста и блоков.
Работает минимум на iOS 15.0.
MarkdownUI на GitHub: https://github.com/gonzalezreal/swift-markdown-ui
Платформа: iOS
⭐️: 1.3K
До того, как это стало стримом — рассказываем о настройке потокового вещания
Пользователь запускает приложение, нажимает кнопку — и вжух, уже стримит в сеть, а к его стриму подключаются другие пользователи. В плеере в этот момент происходит огромная работа: скрипты забирают изображение и звук, кодируют, пакуют в контейнеры, и передают данные в местный разгрузочный порт, где контейнер снова разбивают на упакованное в него видео и аудио. Сколько усилий! Как эти усилия выглядят на самом деле и о способах настройки потокового вещания на примере работы с протоколом SRT рассказывает iOS-разработчик CleverPumpkin Никита Тархов.
Статья: https://apptractor.ru/stream-potok
Платформа: iOS
В Compose враг номер один - это ненужные рекомпозиции. Часто разработчики используют такие инструменты, как recompositionHighligher, LogComposition и layout inspector для подсчета рекомпозиций, но нет прямого способа понять, почему произошла рекомпозиция. Rebugger - это простая функция компоновки, которая может отслеживать изменения в заданных аргументах. Она выводит причину рекомпозиции в окно Logcat.
Rebugger на GitHub: https://github.com/theapache64/rebugger
Платформа: Android
⭐️: 339
Swift Power Assert - показывает информацию о состоянии всех переменных ассерта в виде удобной диаграммы (Power assertions или Диаграммные утверждения дополняют неудачи утверждений информацией о значениях, полученных при оценке условия, и представляют ее в легко усваиваемой форме).
Swift Power Assert реализована с использованием макросов - экспериментальной возможности Swift. Поэтому для использования этой библиотеки необходимо использовать предварительную версию инструментов Swift.
Swift Power Assert на GitHub: https://github.com/kishikawakatsumi/swift-power-assert
Платформа: iOS
⭐️: 136
Шаблон Цепочка обязанностей и его реализация на Swift
Поведенческие модели проектирования необходимы для оптимизации взаимодействия между объектами в программной системе. Один из таких паттернов, «Цепочка обязанностей», особенно полезен для организации и управления тем, как запрос обрабатывается различными компонентами системы. Отделяя отправителя запроса от его получателей, этот паттерн повышает гибкость и упрощает сопровождение кода. В этой статье мы рассмотрим паттерн «Цепочка обязанностей» и продемонстрируем его реализацию с помощью кода Swift.
Статья: https://apptractor.ru/Chain-of-responsibility
Платформа: Swift
Stream Result - “железнодорожно-ориентированная” библиотека для моделирования и простой обработки успехов/неудач для Kotlin, Android и Retrofit.
Железнодорожно-ориентированное программирование - это функциональный подход к обработке success/failure нормализованными способами, всегда позволяющий предсказать результат. Эта библиотека поможет вам реализовать железнодорожно-ориентированные модели и функции в Kotlin и Android (особенно с помощью Retrofit).
Stream Result на GitHub: https://github.com/getStream/stream-result
Платформа: Android
⭐️: 59
Repost from AppFiles - Mobile Development
Видео и подкасты за неделю
•
(iOS En) SwiftUI Deep Links in iOS - Deep Linking TabView & NavigationStack
• (iOS En) Firebase Firestore Maps and Arrays Tutorial for iOS
• (iOS En) Roll your own networking stack
• (iOS En) Fantastic Swift tools and where to find them
• (iOS En) Previews and Package Oriented Programming
• (And En) Now in Android: 80 - Media3, Jetpack Compose 1.4, Crash Management, and more
• (And En) Accessibility services and how users interact with them
• (And En) Firebase Google Sign-In With Jetpack Compose & Clean Architecture
• (And En) Automatic Security Scan for Your Android App With AppSweep & GitHub Actions
• (And En) What's new in Kotlin 1.8.20: K2 compiler, language updates, stdlib improvements, and Java interop
• (Dev Ru) Yet Another Mobile Party (YAMP)
• (Dev Ru) Менторство в IT
• (Dev Ru) Podlodka #314: нужны ли программисты, если AI пишет код
• (Dev Ru) Зачем нужны тимлиды
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻Видео и подкасты за неделю
•
(iOS En) SwiftUI Deep Links in iOS - Deep Linking TabView & NavigationStack
• (iOS En) Firebase Firestore Maps and Arrays Tutorial for iOS
• (iOS En) Roll your own networking stack
• (iOS En) Fantastic Swift tools and where to find them
• (iOS En) Previews and Package Oriented Programming
• (And En) Now in Android: 80 - Media3, Jetpack Compose 1.4, Crash Management, and more
• (And En) Accessibility services and how users interact with them
• (And En) Firebase Google Sign-In With Jetpack Compose & Clean Architecture
• (And En) Automatic Security Scan for Your Android App With AppSweep & GitHub Actions
• (And En) What's new in Kotlin 1.8.20: K2 compiler, language updates, stdlib improvements, and Java interop
• (Dev Ru) Yet Another Mobile Party (YAMP)
• (Dev Ru) Менторство в IT
• (Dev Ru) Podlodka #314: нужны ли программисты, если AI пишет код
• (Dev Ru) Зачем нужны тимлиды
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻SwiftWhisper - обертка для порта системы Whisper от OpenAI 🙈 Whisper - это модель распознавания речи общего назначения. Она обучена на большом наборе данных разнообразных аудиозаписей и является многозадачной моделью, которая может выполнять многоязычное распознавание речи, перевод речи и идентификацию языка. С помощью SwiftWhisper вы можете встроить стороннюю C/C++ имплементацию Whisper в свои приложения.
SwiftWhisper на GitHub: https://github.com/exPHAT/SwiftWhisper
Whisper.cpp на GitHub: https://github.com/ggerganov/whisper.cpp
OpenAI Whisper на GitHub: https://github.com/openai/whisper
Платформа: iOS
⭐️: 38
Один год инди-разработки
После 12 месяцев работы над своими проектами я решил составить резюме и поделиться своим путешествием и некоторыми уроками, которые я усвоил. Написание моей первой статьи в блоге показалось мне идеальным способом сделать это, и я надеюсь, что вам понравится ее читать.
Статья: https://apptractor.ru/odin-god
Платформа: инди-разработка
Android User Interface Samples - коллекция фирменных Android-проектов от Google, которые помогут вам понять фичи UI и начать встраивать их в свои приложения.
Android User Interface Samples на GitHub: https://github.com/android/user-interface-samples
Платформа: Android
⭐️: 3.9K
Создание Reddit Recap с помощью Jetpack Compose
Когда мы впервые представили Reddit Recap нашим пользователям в конце 2021 года, он завоевал огромную популярность, и мы знали, что он вернется в 2022 году. И хотя между выпусками прошел всего год, способ создания мобильных приложений в Reddit кардинально изменился, что заставило нас перестроить работу с Recap с нуля, сделав его более ярким, с богатой анимацией и расширенными возможностями шаринга.
Одним из самых значительных изменений стало внедрение Jetpack Compose и нашей архитектуры презентаций на основе композиций. Чтобы полностью использовать нашу реактивную UI-архитектуру, мы решили переписать весь пользовательский интерфейс с нуля на Compose. Мы посчитали, что это стоит того, поскольку Compose позволит нам выразить наш пользовательский интерфейс с помощью простых, многократно используемых компонентов.
Статья: https://apptractor.ru/reddit-recap
Платформа: Android
SwiftFormat - библиотека и инструмент командной строки для реформатирования кода Swift. SwiftFormat выходит за рамки того, что можно ожидать от форматера кода. В дополнение к корректировке пробелов он может вставлять или удалять неявные self, удалять лишние скобки и исправлять многие другие отклонения от стандартных идиом Swift.
Многие программисты предпочитают свой стиль форматирования кода, а другие, кажется, совершенно не замечают существующих в проекте соглашений о форматировании (к негодованию своих коллег). При совместной работе над проектом может быть полезно договориться об общем стиле кодирования, но применение этого стиля вручную утомительно, чревато ошибками и может привести к спорам, если некоторые участники воспринимают его более серьезно, чем другие. Наличие инструмента для автоматического внедрения общего стиля устраняет эти проблемы и позволяет сосредоточиться на поведении кода, а не на его представлении.
SwiftFormat на GitHub: https://github.com/nicklockwood/SwiftFormat
Платформа: iOS
⭐️: 6.5K
