AppFiles - Mobile Development
2.01K subscribers
2.56K photos
33 videos
8 files
3.45K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
Вакансия: Android Developer
Киев, full-time, office.

OBRIO - одна из продуктовых компаний экосистемы бизнесов Genesis. Mobile команда OBRIO создала и развивает мобильное приложение Nebula. Продукт уже показал высокие результаты: его активная аудитория превышает 2 млн. пользователей ежемесячно, а Android версия заняла второе место в категории LifeStyle Apps по США, обогнав Tinder 🙂

Техническая команда продукта состоит из: Android лида, middle Android разработчика, QA и DevOps инженеров. Наш стек: Kotlin, CI/CD, Dagger 2, Android Architecture Components (Room, etc.), clean architecture, Retrofit, rx 2, Socket io.

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

Полное описание вакансии:
https://gen-tech.breezy.hr/p/b90fb941547a

Больше о нас:
Genesis https://gen.tech/
OBRIO https://bit.ly/3fNifqQ
Nebula https://play.google.com/store/apps/details?id=genesis.nebula&hl=ru&gl=US

Наш рекрутер ответит на все твои вопросы🤔
https://t.iss.one/alinaneverova
TTProgressHUD - легкая библиотека для показа HUD-ов на SwiftUI. Сделаны в стиле Apple.

Библиотека на GitHub: https://github.com/honkmaster/TTProgressHUD
Платформа: iOS
⭐️: 70
This media is not supported in your browser
VIEW IN TELEGRAM
Многопоточность и Kotlin в Яндекс.Картах: как не допустить падения новых фич на iOS

Kotlin Multiplatform пошел в прод и вот статья от Яндекс.Карт:

В статье я расскажу и покажу на примерах, с какими проблемами я столкнулся при написании многопоточного кода на Kotlin Multiplatform, как эти проблемы решать, как лучше организовывать потоки данных в многопоточной среде и что ещё нужно делать, чтобы написанное на Kotlin не падало на iOS. Увы, писать код «как обычно» не получится.

Статья: https://habr.com/ru/company/yandex/blog/575846/
Платформа: iOS
⬆️: 21
Atmostate - погодное приложение на основе OpenWeatherMap, написанное на Jetpack Compose с применением рекомендованной Google архитектуры MVVM. С офлайн кешированием, данными для текущей локации пользователя.

Приложение на GitHub: https://github.com/ramzan/Atmostate/
Платформа: Android
⭐️: 73
Google ускоряет сборку Kotlin с Kotlin Symbol Processing 1.0

Google выпустил Kotlin Symbol Processing (KSP). KSP предлагает аналогичные функции Kotlin Annotation Processing Tool (KAPT), однако он работает до 2 раз быстрее, предлагает прямой доступ к конструкциям языка Kotlin и поддерживает многоплатформенные таргеты.

KSP отходит от модели генерации заглушек, работая как плагин компилятора Kotlin — он позволяет обработчикам аннотаций читать и анализировать исходные программы и ресурсы непосредственно в Kotlin, вместо того, чтобы требовать от вас зависимости от инфраструктуры обработки аннотаций Java. Это значительно увеличивает скорость сборки (до 2 раз быстрее для тестового приложения Kotlin с Room) и означает, что KSP можно использовать для сред без Android и без JVM, таких как Kotlin/Native и Kotlin/JS.

Подробнее: https://apptractor.ru/info/news/kotlin-symbol-processing-1-0.html
This media is not supported in your browser
VIEW IN TELEGRAM
Stipop SDK - более 270,000 стикеров (в том числе анимированных), которые можно просто и быстро интегрировать в чат, камеру, видео и т.п. приложения.

Библиотека для iOS: https://github.com/stipop-development/stipop-ios-sdk
Библиотека для Android: https://github.com/stipop-development/stipop-android-sdk
⭐️: 3
Реализация Unidirectional Data Flow в супераппе inDriver

Основная идея Unidirectional Data Flow заключается в том, чтобы данные в приложении двигались только в одном направлении: от модели приложения к UI, но не обратно. Если в UI что-то произошло, он никак не пытается интерпретировать эти события. Все, что делает Unidirectional Data Flow — отправляет события в модель, которая решает, как обновить состояние системы.

В такой схеме мы легко добиваемся того, чтобы данные, передаваемые в UI, были иммутабельными. UI получает на вход данные и отображает их, а если надо что-то изменить, UI отправляет событие (Action) в модель и ждет, когда к нему придут уже обновленные данные.

Статья: https://apptractor.ru/udfdr
Платформа: iOS
⬆️: 21
Kavsoft SwiftUI Animations - подборка анимаций для SwiftUI 2.0. Всего около 50 примеров с исходниками и видео.

Исходники на GitHub: https://github.com/recherst/kavsoft-swiftui-animations
Платформа: iOS
⭐️: 9
This media is not supported in your browser
VIEW IN TELEGRAM
Делаем Clubhouse для Android за 10 недель

В первый день в Clubhouse мне было поручено создать приложение для Android с нуля. Обычная задача.

Этот пост - краткий обзор моего опыта - каков был наш процесс, какие задачи мы решили и чему научились на этом пути.

Статья: https://blog.clubhouse.com/shipping-clubhouse-on-android-in-10-weeks/
Платформа: Android
Понимаем Gradle - серия видео и примеров. Вместо того, чтобы подробно объяснять каждую функцию, серия изначально нацелена на объяснение фундаментальных концепций и шаблонов. Она даст вам общее представление о том, как все работает в Gradle, и позволит структурировать ваш проект в удобочитаемом и поддерживаемом виде.

Видео: https://www.youtube.com/playlist?list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE
Исходники: https://github.com/jjohannes/understanding-gradle
Платформа: Android
⭐️: 6
#ДатаДня: 256 день года - День Программиста. С праздником и хорошего кода 😀
Документируем код Kotlin с KDoc

Совсем простое введение в KDoc — язык написания документации для кода на Kotlin.

Перевод статьи: https://apptractor.ru/info/articles/kdoc.html
Платформа: Android
👋: 141
This media is not supported in your browser
VIEW IN TELEGRAM
GaugeSlider - круговой слайдер для приложения умного дома или любого другого применения. Настраиваются все цвета, шрифты, тексты, значения, иконки и т.п.

Исходники на GitHub: https://github.com/edgar-zigis/GaugeSlider
Платформа: iOS
⭐️: 98
Автоматическое распознавание букв и нахождение слов в игре Слово

Однажды я играл в игру "Слово", основная суть которой заключается в составлении слов из прилегающих друг к другу букв, которые даны на игровом поле 5 на 5. И ко мне пришла идея о создании программы, которая могла бы автоматически решать поставленную задачу. В итоге был реализован shortcut на iPhone, который совместно с дополнительными программами помогает находить слова.

Статья: https://apptractor.ru/slv
Платформа: iOS
⬆️: 8
Forwarded from Код Воробья для iOS разработчиков
Media is too big
VIEW IN TELEGRAM
Рашин адаптайшн
Автоматическое развертывание приложений для iOS с помощью Bitrise и Fastlane

В жизни каждого iOS-разработчика наступает время, когда все новые важные функции написаны, и новая сногсшибательная сборка должна быть отправлена QA-команде (или непосредственно клиенту).

Самый простой способ сделать это - использовать опцию Archive в Xcode, которая после определения профилей создаст файл IPA и отправит его на тестовые устройства.

Этот подход прост и подходит для небольших проектов, но требует много времени и постоянного повторения. Он также требует вашего внимания. В более крупных проектах постоянное архивирование и загрузка приложения будут только раздражать.

Автоматизация всего процесса сэкономит вам много времени.

Статья: https://apptractor.ru/BtrsFstln
Платформа: iOS
👋: 475
This media is not supported in your browser
VIEW IN TELEGRAM
SSCustomBottomNavigation - нижнее меню (bottom bar) с анимацией и поддержкой Jetpack Navigation. Настраиваются иконки, цвета, текст для элементов и бейджей, высота волны.

Библиотека на GitHub: https://github.com/SimformSolutionsPvtLtd/SSCustomBottomNavigation
Платформа: Android
⭐️: 201
Автоматизация повышения качество кода в Android

Современные мобильные приложения уже вполне серьезные Enterprise проекты, которые разрабатываются десятками, а то и сотнями разработчиков, содержат в себе тысячи строк кода и постоянно меняются и развиваются. Уследить за такой огромной кодовой базой помогает процесс автоматизации проверок кода и работы приложения. Сегодня расскажу о том, какие инструменты вы можете использовать, чтобы улучшить стабильность вашего проекта и не допускать ошибок, а также сэкономить время коллегам во время pull request. Вы разрабатываете проект в маленькой команде, а то и вовсе один? Тогда эта статья вам еще важнее, так как вы скорее всего не настраивали у себя никакие проверки, а я расскажу почему это нужно сделать.

Видео: https://apptractor.ru/vdrcd
Текст: https://apptractor.ru/ndrcd
Платформа: Android
⬆️: 11
Реализация Unidirectional Data Flow в супераппе. Часть II

Вторая часть статьи от inDriver. В статье рассматриваются 3 проблемы и сравнивается то, как разные фреймворки - ReSwift и The Composable Architecture - их решают. В конце рассказывается, какое решение в итоге реализовали разработчики.

Статья: https://apptractor.ru/udfdr2
Платформа: iOS
⬆️: 13
Forwarded from Programmer Humor
ОСТОРОЖНО: это изображение только 18++