AppFiles - Mobile Development
2K subscribers
2.55K photos
33 videos
8 files
3.43K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
Ktlint - линтер Kotlin от Pinterest, защищающий от тривиальных ошибок, со встроенным средством форматирования. Работает без предварительной конфигурации - это означает, что не нужно принимать решения, спорить о правилах или управлять специальными файлами (конечно, можно использовать дополнительные наборы правил, но это не обязательно). Ktlint просто пытается применить официальный стиль кода с Kotlinlang.org и Android Kotlin Style Guide. В нем есть встроенный форматтер кода, чтобы вам не пришлось исправлять все нарушения стиля вручную, настраиваемый вывод отчетов, представляется в одном jar со всеми зависимостями.

Ktlint на GitHub: https://github.com/pinterest/ktlint
Платформа: Kotlin/Android
⭐️: 4.9K
4 малоизвестные функции Swift

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

Перевод: https://apptractor.ru/4swft
Платформа: Swift/iOS
👏: 646
Scaling Header Scroll View - Scroll View с “прилипчивым” заголовком, который сжимается при прокрутке. Написан на SwiftUI.

Scaling Header Scroll View на GitHub: https://github.com/exyte/ScalingHeaderScrollView
Платформа: iOS
⭐️: 111
SlimeKT - платформа для обмена статьями, где вы можете персонализировать источники, подписываться на любимые темы, получать ежедневные напоминания о прочтении, знакомиться с новыми авторами и делиться своими статьями. Приложение, созданное с использованием Kotlin, Dagger Hilt, Room Database, Coroutines, Flow, AndroidX Glance, WorkManager, Coil и т.д.

SlimeKT на GitHub: https://github.com/kasem-sm/SlimeKT
Платформа: Android
⭐️: 221
#Перечитывая2021: Руководство для инженеров о том, как сказать «нет»

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

Статья: https://apptractor.ru/sayno
Платформа: разработка
iOS Clean Architecture MVVM - шаблон iOS-проекта, реализованного с использованием чистой многоуровневой архитектуры и MVVM. В нем реализованы все слои и концепции, которые нужны для современной разработки.

iOS Clean Architecture MVVM на GitHub: https://github.com/kudoleh/iOS-Clean-Architecture-MVVM
Платформа: iOS
⭐️: 1.8K
Самый быстрый путь в «Лабораторию Касперского» для мобильных разработчиков с опытом от 1 года

Кого ищем?

- iOS-разработчиков со знанием Swift / ObjectiveC
- Android-разработчиков со знанием Java / Kotlin

Какие условия?

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

Из бонусов: ДМС со стоматологией; программа релокации в штаб-квартиру для кандидатов из регионов; страхование; 2 спортзала, сауна, массажист и врач в офисе.

Если хочешь узнать подробнее, то переходи по ссылке.

Что нужно делать?

- До 11 мая подай заявку на участие;
- 14 мая приходи на онлайн-знакомство с командой

Уже 15 мая ты можешь получить оффер.

Подать заявку: https://kas.pr/14h1
💩10
Awesome Android Lint - подборка отличных пользовательских правил и ресурсов Android lint. Есть правила от Google, Uber, Slack и други[, статьи о том, как внедрять линтеры и улучшении кода.

Awesome Android Lint на GitHub: https://github.com/hbmartin/awesome-android-lint
Платформа: Android
⭐️: 20
Тест-ревью: как прошли два года написания unit-тестов

Часто слышу мнение, что unit-тесты не нужны для мобильной разработки: в приложении должно быть минимум логики, основная работа с UI, а его сложно тестировать, да ещё и тесты отнимают время, которое можно было бы потратить на написание фич.

За этим мнением скрывается простая правда — люди, которые так говорят, не умеют писать тесты. Не умеют писать их быстро; писать там, где нужно; писать так, чтобы была ощутимая польза для бизнеса. Я тоже был таким — понимал, что тесты нужны, но не понимал какие, где и как их писать.

Рассказываю, что поменялось спустя 2 года и 4 тысячи тестов.

Статья: https://apptractor.ru/utst
Платформа: тестирование/iOS
⬆️: +10
YPImagePicker — это выбор (image picker) фото/видео в стиле Instagram, написанный на чистом Swift. Он многофункционален и легко настраивается в соответствии с требованиями вашего приложения.

YPImagePicker на GitHub: https://github.com/Yummypets/YPImagePicker
Платформа: iOS
⭐️: 3.8K
Как использовать дженерики в Swift

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

Перевод: https://apptractor.ru/gensft
Платформа: iOS/Swift
👏: 44
👍2
LibreTube - альтернативный фронтенд YouTube для Android. Поддерживаются практически все функции оригинального клиента, кроме комментариев и поисковых фильтров.

LibreTube на GitHub: https://github.com/libre-tube/LibreTube
Платформа: Android
⭐️: 1.3K
Aurora OS: первый взгляд

На фоне всех происходящих событий, очень много людей стало задумываться, а есть ли у нас свои мобильные операционные системы. И как выяснилось они есть, их несколько и сегодня мы познакомимся с самой перспективной из них - Aurora OS. Это будет взгляд на мобильную разработку под российские ОС от разработчика с 8-летним опытом Android и iOS. Будем сравнивать, делать первые выводы.

В видео:

• 00:04:11 — Скачиваем SDK
• 00:10:23 — Обзор IDE и эмулятора
• 00:23:01 — Разбор верстки
• 00:39:30 — Как получить телефон на Aurora OS
• 00:41:02 — Что ещё можно сверстать

Видео: https://apptractor.ru/arra
Платформа: разработка
💩9👍1🔥1🤮1
SwiftUI Introspect позволяет получить базовые элементы UIKit или AppKit для представления SwiftUI. Работает он добавляя пользовательский IntrospectionView в иерархию представлений, а затем просматривая иерархию UIKit, чтобы найти соответствующее представление. Например, с помощью Introspect вы можете получить доступ к UITableView для изменения разделителей или к UINavigationController для настройки панели вкладок.

SwiftUI Introspect на GitHub: https://github.com/siteline/SwiftUI-Introspect
Платформа: iOS
⭐️: 3.1K
Google запустил обучающий курс «Основы Android с Compose»

Подобно курсу «Основы Android на Kotlin», «Основы Android с Compose» обучает основам программирования на Kotlin. Вам не нужен какой-либо предыдущий опыт программирования, кроме базовой компьютерной грамотности, чтобы начать обучение. Курс не только охватывает самые последние методы создания приложений для Android, но и разработан таким образом, чтобы вам было проще и интереснее изучать Android-разработку.

Сайт: https://developer.android.com/courses/android-basics-compose/course
Платформа: Android
Худший баг в истории — случайная потеря лучших игроков

Представьте, что вы обнаружили серьезную ошибку в рабочей версии сразу после выпуска игры. Представьте, что эта ошибка вредит только вашим платящим клиентам. Представьте, что игра зависает сразу после того, как игроки совершат покупку в приложении. Представьте, что после этого при перезапуске игра просто зависает. Представьте, что игрок никогда не сможет запустить ее снова и должен удалить игру. Представьте, что ваше приложение в настоящее время уже выпущено в Apple App Store. Это история такого бага, худшего бага, с которым я когда-либо сталкивался за 30 лет программирования. Это история о том, как мы отследили проблему и поработали с Unity над ее исправлением.

Перевод: https://apptractor.ru/bgunt
Платформа: разработка/Unity
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Compose Animated Music Card - анимированные карточки , сделанные с помощью Jetpack Compose.

Compose Animated Music Card на GitHub: https://github.com/YvesKalume/ComposeAnimatedMusicCard
Платформа: Android
⭐️: 12
Интересная история сбоя WorkManager

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

Перевод: https://apptractor.ru/wrkmngr
Платформа: Android
👍2
UIPilot - typesafe навигационная библиотека SwiftUI. UIPilot не является заменой NavigationView в SwiftUI, это скорее оболочка вокруг него, которую вы, вероятно, сами бы и написали. Таким образом, все стандартные функции NavigationView, такие как заголовок, жесты смахивания, верхняя панель и т. д., доступны по умолчанию. API-интерфейсы вдохновлены Android, Flutter и веб-маршрутизаторами - они очень просты и удобны в использовании. Типобезопасная навигация подразумевает, что маршрутизация по неправильному пути или с неправильными параметрами завершится ошибкой во время компиляции, а не во время выполнения.

UIPilot на GitHub: https://github.com/canopas/UIPilot
Платформа: iOS
⭐️: 108
Я заменил нативное iOS-приложение кроссплатформенным веб-приложением - и никто не заметил!

Оказывается, в 2022 году для многих приложений наконец-то сбылась мечта — написать один раз и запустить где угодно. Компромисс затрат и выгод для кроссплатформенных веб-приложений всегда заключался в обмене худшей производительности на меньшее время разработки. В 2014 году для большинства приложений это был плохой компромисс. Но за последние 8 лет многое изменилось.

Перевод: https://apptractor.ru/crssnow
Платформа: кроссплатформа
👏: 1K