AppFiles - Mobile Development
2.01K subscribers
2.56K photos
33 videos
8 files
3.45K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
SupportDocs - библиотека для создания и показа справочных материалов в iOS-приложении. Работает все на основе GitHub - вы пишете там документацию с разметкой, GitHub Pages превращает ее в страницы, GitHub Action генерит JSON, SupportDocs скачивает и показывает пользователям.

Библиотека на GitHub: https://github.com/psalzAppDev/TwoSlideOverSupport
Платформа: iOS
⭐️: 1
Вертел я ваши UIView

В этой статье разбирают все основные возможности работы с базовым классом CALayer. Теперь можно смело приступать к анимациям и создавать крутые интерфейсы.

Статья: https://apptractor.ru/vrtuivw
Платформа: iOS
⬆️: 11
This media is not supported in your browser
VIEW IN TELEGRAM
Compose Ratingbar - настраиваемая форма с оценками на Jetpack Compose.

Библиотека на GitHub: https://github.com/a914-gowtham/compose-ratingbar
Платформа: Android
⭐️: 38
TimelineView - настраиваемая и простая в использовании библиотека для показа временной шкалы в Android-приложении. Может использоваться как автономный View или как декоратор RecyclerView.

Библиотека на GitHub: https://github.com/lriccardo/TimelineView
Платформа: Android
⭐️: 33
Как создать собственный анимированный Tab Bar для iOS-приложения

Каждый UI-дизайнер любит красивые и анимированные панели вкладок. С другой стороны, это кошмар для разработчика, который должен реализовать этот дизайн. Конечно, будет проще использовать нативный таб бар Apple и сосредоточиться на более интересных вещах, таких как реализация бизнес-логики. Но что, если нам нужно создать настраиваемую панель вкладок? С чего начать?

Статья: https://apptractor.ru/tbbrios
Платформа: iOS
👋: 29
Масштабируем Jetpack Compose Navigation

В одном из моих личных проектов я решил использовать Jetpack Compose в качестве основной технологии. Это означало, что моё приложение будет иметь одну Activity, а вся навигация будет выполняться с помощью Compose. Когда я начал планировать проект, библиотеки Compose Navigation ещё не было, как не было и способа внедрить ViewModel в Composable без использования компонентов Activity, Fragment или View.

Но примерно за полгода до публикации этой статьи появилась библиотека Jetpack Compose Navigation, и Dagger-Hilt стал поддерживать Compose. Сегодня я расскажу о моём пути: поделюсь видением проблемы масштабируемости навигации на примерах Google и предложу её возможное решение.

Статья: https://apptractor.ru/cmpsnv
Платформа: Android
⬆️: 16
Вы когда-нибудь хотели писать асинхронный код также просто, как синхронный? AwaitKit - это мощная Swift-библиотека, вдохновленная спецификацией Async/Await в ES8 (ECMAScript 2017), которая реализует мощный способ последовательного написания асинхронного кода. Внутри она использует PromiseKit для создания и управления промисами.

Библиотека на GitHub: https://github.com/tomCompsoft/AwaitKit
Платформа: iOS
⭐️: 0
JetBrains Fleet: переоцененный редактор или новое слово в IDE?

JetBrains анонсировала новый гибрид текстового редактора и IDE под названием JetBrains Fleet, и похоже, что весь Интернет сошел с ума из-за этого объявления. Эндрю Зуо написал статью о том, каким он видит новый редактор кода и сказал в ней, что во Fleet нет ничего нового. Статья собрала 1.4К апвоутов, однако в ней же ему быстро напихали комментариев и сказали, что он мыслит слишком узко. И это при том, что сам редактор никто еще не видел.

Статья: https://apptractor.ru/jbflt
Платформа: среда разработки
👋: 1.4К
Neon - простая аркадная игра на Jetpack Compose, Kotlin и корутинах.

Проект на GitHub: https://github.com/mariodujic/Neon
Платформа: Android
⭐️: 16
Ответ на интервью, который стоил мне работы в 314+ тысяч долларов

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

Статья: https://apptractor.ru/intrans
Платформа: собеседование
👋: 457
Кодогенерация DTO: зачем она нужна и как её настроить

Data Transfer Object — модель данных, которые мы передаём из одного слоя приложения в другой. В Яндекс Go активно используется DTO.

Правильно написанная модель позволяет разрабатывать разные слои приложения независимо — но нужно следить за актуальностью самой модели на каждом слое. Например, если ошибиться с названием переменной, то клиент не сможет декодировать полученные из сети данные и пользователь не увидит желаемые данные. Такую ошибку легко совершить, в n-й раз перепечатывая названия переменных под каждый слой — а разработчики и правда должны рутинно это делать при любом изменении (или расширении) исходного формата данных. Ещё сложнее заметить ошибку на код-ревью.

Поэтому разработчики решили добавить механизм, который сам бы составлял и переписывал код моделей DTO в зависимости от исходного формата.

Статья: https://apptractor.ru/yadto
Платформа: iOS
⬆️: 9
ProgressIndicatorView - различные индикаторы прогресса, созданные с помощью SwiftUI. Всего 5 индикаторов в одной библиотеке.

Библиотека на GitHub: https://github.com/exyte/ProgressIndicatorView
Платформа: iOS
⭐️: 19
2021 для iOS и macOS разработчиков — главное от Apple

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

Обзор: https://apptractor.ru/appl2021
Платформа: iOS
Fluid работает на основе ResultBuilder и собственного механизма разметки. С его помощью вы можете использовать декларативный синтаксис для создания пользовательского интерфейса с помощью UIKit.

Библиотека на GitHub: https://github.com/octree/Fluid
Платформа: iOS
⭐️: 5
5 вещей, на которые стоит обратить внимание iOS-разработчикам в 2022 году

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

Перевод: https://apptractor.ru/ios2022
Платформа: iOS
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Contacts Android - самый простой способ получить полный доступ ко всем контактам в Android без необходимости иметь дело с Contacts Provider и курсорами. Библиотека написана на Kotlin с совместимостью с Java. В этом же репозитории находится документация и практические руководства по работе с контактами в Android.

Проект на GitHub: https://github.com/vestrel00/contacts-android
Платформа: Android
⭐️: 204
Неполный список навыков, необходимых senior-разработчикам, помимо программирования

Что должен уметь ведущий разработчик? Только ли писать качественный код? Конечно, нет, это лишь основа. Вот неполный список того, что нужно знать Senior-инженеру помимо программирования. Перевод статьи на Medium, собравшей более 8 тысяч "аплодисментов".

Перевод: https://apptractor.ru/snrsk
Платформа: карьера
👋: 8.4К
1
FLCharts - библиотека для построения графиков в iOS-приложениях. Умеет использовать жесты для увеличения/уменьшения, подсвечивать значения и указывать лимиты, скроллировать графики, анимировать их, настраивать цвета.

Библиотека на GitHub: https://github.com/francescoleoni98/FLCharts
Платформа: iOS
⭐️: 1
👍1
5 инструментов разработки, на которые стоит обратить внимание в 2022 году

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

1. GitLive
2. CodeSee
3. DeepSource
4. Appsmith
5. WayScript

Статья: https://apptractor.ru/5tls
Платформа: инструменты
Kotlin Multiplatform Wizard - генератор готовых проектов на Kotlin Multiplatform. Выставляете все необходимые параметры нового проекта (платформы, требуемые библиотеки, плагины, тесты) и получаете готовую основу для приложения. Есть готовая веб-версия.

Проект на GitHub: https://github.com/terrakok/kmp-web-wizard
Платформа: Android
⭐️: 119