AppFiles - Mobile Development
1.99K subscribers
2.53K photos
33 videos
8 files
3.41K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
Я разлюбил Flutter

У меня было подозрение, что этим все и кончится, что я напишу именно то, что пишу сейчас. Но я сделан из того же теста, что и любой другой инженер-программист, поэтому я вскочил на подножку уходящего поезда, обрадовался, потом обрадовался еще больше и даже стал евангелистом. Евангелистом Flutter. Те, кто следит за мной на Medium и LinkedIn, знают, о чем я говорю. Я рекламировал Flutter как второе пришествие, я был в восторге от него и использовал его примерно 3 года. Но сомнения потихоньку закрадывались, и сегодня, спустя годы, я должен стать столь же честным, сколь был восторженным, и признаться — у меня есть сомнения в жизнеспособности Flutter.

Позвольте мне начать с того, что концептуально Flutter по-прежнему — на мой взгляд — лучший кроссплатформенный фреймворк всех времен, и прямо сейчас я не вижу никакой реальной альтернативы. Хотя, никогда не говори никогда. Мы также не видели альтернативы до тех пор, пока не появился Flutter. Скептики также утверждали, что он никогда не приживется, пока это не произошло. И я был бы слишком самонадеянным, чтобы утверждать, что Flutter станет последней кроссплатформенной средой разработки.

Мои растущие сомнения относительно Flutter не имеют ничего общего с самим Flutter. Они все вокруг него.

• Владелец Flutter, Google
• Kotlin Multiplatform
• Фрагментация
• Dart
• Исполнение
• Является ли Flutter хорошим выбором?

Статья: https://apptractor.ru/develop/cross-platform-development/ya-razlyubil-flutter.html
Платформа: кроссплатформа/Flutter
👏4👍2🔥1😁1
Yattee - видеоплеер, ориентированный на конфиденциальность, для iOS, tvOS и macOS. Сделан на SwiftUI, из фич - очередь просмотра и история, кастомные контролы для плеера, жесты, поддержка 4К, картинка в картинке, фоновое воспроизведение аудио.

Yattee на GitHub: https://github.com/yattee/yattee
Платформа: iOS
⭐️: 1.2K
Circuit - это простая, легкая и расширяемая архитектура от Slack для создания приложений Kotlin, основанных на Compose. Основными компонентами Circuit являются интерфейсы Presenter и UI. Правила их работы:

1. Presenter и UI не могут напрямую обращаться друг к другу. Они могут обмениваться данными только посредством передачи состояний и событий.
2. UI являются Compose-firstю
3. Презентеры тоже Compose-first. Они не генерируют Compose UI, но используют среду выполнения Compose для управления и генерирования состояний.
4. И Presenter, и UI имеют по одной компонуемой функции.
5. В большинстве случаев Circuit автоматически подключает презентеров и UI.
6. Presenter и UI являются дженериками, причем дженерики определяют типы UiState, с которыми они взаимодействуют.
7. Они управляются Screen-ами. Один запускает новую пару Presenter/Ui, запрашивая их с заданным Screen, который они понимают.

Circuit на GitHub: https://github.com/slackhq/circuit
Сайт: https://slackhq.github.io/circuit/
Платформа: Android
⭐️: 562
Теория «разбитых окон» в разработке ПО

Если не принимать никаких мер, технический долг начинает расти, и окна все больше разбиваются. Проблемы распространяются в коде через имитацию («Я только что скопировал этот подход»), повторение (неверные предположения) или просто копирование + вставку.

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

Статья: https://apptractor.ru/okn-brk
Платформа: разработка
This media is not supported in your browser
VIEW IN TELEGRAM
SpoilerViewExample - пример реализации затемнения и открытия спойлеров в Telegram на SwiftUI.

SpoilerViewExample на GitHub: https://github.com/artemnovichkov/SpoilerViewExample
Платформа: iOS
⭐️: 4
MilitaryJet - репозиторий включает в себя готовые примеры простого написания тестов UI для Jetpack Compose с защитой от ошибок. Каждый компонент пользовательского интерфейса, их возможное поведение и состояние можно подвергнуть тестированию. С помощью этого репозитория вы можете выполнять любое автоматизированное тестирование пJetpack Compose UI — т. е. вы можете тестировать ВСЕ (как видимое, так и невидимое, т. е. вещи, которые не видны в пользовательском интерфейсе, но существуют в узле — например, описание контента) в пользовательском интерфейсе.

MilitaryJet на GitHub: https://github.com/emperorfin/MilitaryJet
Платформа: Android
⭐️: 8
1 апреля пройдёт Yet Another Mobile Party — онлайн-стрим про мобильную разработку от Яндекса с гостями из разных компаний.

Yet Another Mobile Party — онлайн видеоподкаст без докладов и презентаций Спикеры Яндекса и наши гости из других компаний соберутся за круглым столом, поделятся новостями, обсудят карьерный путь и актуальные технологии.

Ищите на карточках темы и спикеров прямого эфира:)

А чтобы присоединиться и задать свои вопросы спикерам, нужно — зарегистрироваться и подключиться к трансляции 1 апреля

Программа и регистрация
🤡2
OpenAISwift - обертка для ChatGPT и OpenAI HTTP API. Упрощает использование чат-бота и позволяет получать дополнения для текста, вести диалог, генерировать изображения, редактировать тексты, проводить классификацию текстов.

OpenAISwift на GitHub: https://github.com/adamrushy/OpenAISwift
Платформа: iOS
⭐️: 922
Современная Android-разработка в 2023 году

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

• Kotlin
• Jetpack Compose
• Android Jetpack
• Material Design
• Чистая архитектура
• Архитектурные паттерны для уровня представления
• Внедрение зависимостей
• Модульность
• Сеть
• Сериализация
• Загрузка изображения
• Реактивность/управление потоками
• Локальное хранение данных
• Тестирование
• Оптимизация R8
• Play Feature Delivery
• Адаптивная верстка
• Производительность
• Обновления в приложении
• Отзывы в приложении
• Доступность
• Безопасность
• Каталоги версий
• Логирование
• Линтер

Статья: https://apptractor.ru/drddev2023
Платформа: Android
Smart AutoClicker - это приложение для Android, позволяющее автоматизировать повторяющиеся задачи, автоматически кликая на экран. В отличие от обычного приложения автокликер не основан на таймерах для выполнения кликов. Вместо этого приложение позволяет захватить изображение с части экрана и выполнить тап, как только это изображение будет обнаружено снова. Клики можно организовывать в сценарии, выполнять нажатия, свайпы, модифицировать состояния, ставить условия и пр.

Smart AutoClicker на GitHub: https://github.com/Nain57/Smart-AutoClicker
Платформа: Android
⭐️: 581
👍2
SunKit - это библиотека Swift, которая использует математику и тригонометрию для вычисления всех возможных сведений о Солнце (есть аналогичный и про Луну). Для вычисления восхода, заката, золотого часа, первого света, азимутов и всего прочего нужен только CLLocation и часовой пояс места.

Этот пакет был разработан командой учеников, относительно недавно освоивших язык программирования Swift, что означает, что в нем может быть много места для улучшений. SunKit был впервые разработан как часть более крупного проекта Sunlitt. Несмотря на то, что Sunlitt не предназначен для выпуска в качестве Open Source, авторы решили выделить фундаментальную логику приложения и сделать из нее библиотеку с открытым исходным кодом.

SunKit на GitHub: https://github.com/Sunlitt/SunKit
Платформа: iOS
⭐️: 51
🤔1
Тестирование производительности Swift-кода с помощью XCTest

В Swift мы можем проводить тестирование производительности с помощью фреймворка XCTest, который является частью среды разработки Xcode. XCTest — это фреймворк для модульного тестирования для Apple iOS и OS X, который позволяет разработчикам создавать и запускать автоматические тесты. Он предоставляет полный набор инструментов для написания, запуска и анализа модульных тестов и тестов производительности для Swift-приложений. В этой статье мы узнаем, как проводить тестирование производительности в Swift с помощью фреймворка XCTest.

Статья: https://apptractor.ru/xctest-perf
Платформа: iOS
👍1
Kotlin Onboarding — обучающий курс по Kotlin прямо в Intellij

Цель курса — научиться писать простые консольные приложения на Kotlin и ознакомиться с синтаксисом и возможностями языка. В качестве предварительного условия вам необходимо базовое понимание программирования на любом языке, поскольку курс не объясняет подробно фундаментальные понятия, такие как переменные, функции или циклы, а скорее предлагает простые напоминания об их определениях и демонстрирует, как они могут быть использованы в Kotlin.

В рамках курса вы реализуете шесть консольных приложений.

Статья: https://apptractor.ru/kotlin-onboarding
Платформа: Kotlin/обучение
KutePreferences - библиотека для создания экрана настроек. Из особенностей - Kotlin, Compose и Material Design 3, большое количество предопределенных типов настроек, поиск, поддержка стилей.

KutePreferences на GitHub: https://github.com/markusressel/KutePreferences
Платформа: Android
⭐️: 5
🔥1