ru
Feedback
AppFiles - Mobile Development

AppFiles - Mobile Development

Открыть в Telegram

Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.

Больше
2 172
Подписчики
Нет данных24 часа
+37 дней
+730 день
Архив постов
Почему я никогда не стану Senior-разработчиком в Amazon Удивительно, но.. "многие не обращают на это внимания, но чем выше ва
Почему я никогда не стану Senior-разработчиком в Amazon Удивительно, но.. "многие не обращают на это внимания, но чем выше ваша должность в крупной технологической компании, тем более безумным становится объем работы. Большинство старших разработчиков, с которыми я общался, работают не менее 60 часов в неделю со всеми проектами и встречами, в которых они участвуют. И это еще не считая того количества работы, которое требуется для достижения должности старшего инженера в Amazon". Статья: https://apptractor.ru/info/articles/pochemu-ya-nikogda-ne-stanu-senior-razrabotchikom-v-amazon.html Платформа: карьера

SwiftLint в деталях Узнайте, как использовать и настраивать SwiftLint, а также как создавать собственные правила в SwiftLint
SwiftLint в деталях Узнайте, как использовать и настраивать SwiftLint, а также как создавать собственные правила в SwiftLint для своего проекта. Статья: https://www.kodeco.com/38422105-swiftlint-in-depth Другая: https://apptractor.ru/info/articles/swiftlint.html Платформа: iOS

Объекты данных в Kotlin Объекты данных — это новый функционал, представленный в Kotlin 1.7.20 и планируемый к выпуску в верси
Объекты данных в Kotlin Объекты данных — это новый функционал, представленный в Kotlin 1.7.20 и планируемый к выпуску в версии 1.9. Разберемся, для чего он нужен. Статья: https://apptractor.ru/kotlin-objects Платформа: Android

Combine от А до Я Combine - это мощный Swift-фреймворк, который помогает управлять асинхронными потоками данных, предоставляя
Combine от А до Я Combine - это мощный Swift-фреймворк, который помогает управлять асинхронными потоками данных, предоставляя декларативный способ обработки сложных асинхронных операций. Он является неотъемлемой частью современной iOS-разработки и может использоваться в различных сценариях, таких как сетевые запросы, пользовательский ввод и многое другое. Вот руководство по началу работы с Combine в Swift, с примерами кода для тех, у кого нет опыта. Статья: https://daddycoding.com/2023/04/26/combine-from-a-to-z/ Платформа: iOS

OpenAI - поддерживаемый сообществом разработчиков пакет Swift для упрощения работы с публичным API от OpenAI. С его помощью в
OpenAI - поддерживаемый сообществом разработчиков пакет Swift для упрощения работы с публичным API от OpenAI. С его помощью вы можете вести чаты, генерировать изображения, транскрибировать аудио в текст, классифицировать тексты и многое другое. OpenAI на GitHub: https://github.com/MacPaw/OpenAI Платформа: iOS ⭐️: 549

Как нам удалось модернизировать приложение Booking.com изнутри и снаружи В этой статье мы рассказываем об основных моментах и
Как нам удалось модернизировать приложение Booking.com изнутри и снаружи В этой статье мы рассказываем об основных моментах и выводах из нашего путешествия по модернизации кодовой базы и дизайна приложения Booking.com. Статья посвящена механике запуска такой программы, поддержанию ее в рабочем состоянии и оценке эффективности. Статья: https://medium.com/booking-product/how-we-managed-to-modernize-the-booking-com-app-from-the-inside-and-out-ed24f0e6df0a Платформа: разработка

Оптимизация приложения для сетевой доступности Доступность сети - важный аспект работы приложений, полагающихся на сетевые во
Оптимизация приложения для сетевой доступности Доступность сети - важный аспект работы приложений, полагающихся на сетевые возможности. Ваши пользователи не всегда будут иметь хорошее подключение к Интернету, поэтому оптимизация приложения для плохих сетевых условий очень важна. Мы можем использовать несколько методов для соответствующей оптимизации нашего приложения, но очень важно знать о распространенных ошибках, когда вы это делаете. После того как я сам написал несколько сетевых фреймворков и десятки приложений, пришло время поделиться с вами моими лучшими практиками, чтобы уберечь вас от ошибок, которые я совершил в прошлом. Статья: https://www.avanderlee.com/swift/optimizing-network-reachability/ Платформа: iOS

Типизированная обработка ошибок в Kotlin Обработка ошибок - это не rocket science. Она проста, но не всегда понятна. В этой с
Типизированная обработка ошибок в Kotlin Обработка ошибок - это не rocket science. Она проста, но не всегда понятна. В этой статье рассматриваются некоторые популярные шаблоны логической обработки ошибок в языке программирования Kotlin. Мы рассмотрим практические примеры и влияние, которое они могут оказать на когнитивную сложность и сопровождаемость программы. Статья: https://medium.com/@mitchellyuwono/typed-error-handling-in-kotlin-11ff25882880 Платформа: Android

Animated Navigation Bar - панель навигации с несколькими предустановленными анимациями, написанная на Jetpack Compose. Animated Navigation Bar на GitHub: https://github.com/exyte/AndroidAnimatedNavigationBar Платформа: Android ⭐️: 55

Проектирование с ограничениями — Live Activity и Dynamic Island Apple запустила виджет Live Activity в iOS 14, а в iPhone 14
Проектирование с ограничениями — Live Activity и Dynamic Island Apple запустила виджет Live Activity в iOS 14, а в iPhone 14 Pro добавила Dynamic Island. С помощью этих обновлений Apple пытается переизобрести доставку push-уведомлений на мобильных устройствах. После запуска сразу же стало очевидно, что Swiggy, приложение для доставки еды, которое отправляет множество уведомлений о ходе доставки, идеально подходит для использования этих новых функций. И вот теперь обе функции доступны для пользователей Swiggy. Мы были потрясены демонстрацией Apple, но, углубившись, мы поняли, что это даже нечто большее. Эта статья рассказывает о том, как мы разрабатывали новейшие виджеты для наших пользователей. Статья: https://apptractor.ru/info/articles/proektirovanie-s-ogranicheniyami-live-activity-i-dynamic-island.html Платформа: iOS/Дизайн и прототипирование

Circuit-фреймворк для Jetpack Compose и тестирование с Robolectric Тестирование приложений Jetpack Compose обычно основано на использовании библиотеки Compose UI Test и создании юнит-тестов поверх библиотек мокирования или DI. Однако этот подход требует наличия эмулятора и не всегда применим для использования в конвейере CI/CD, где обычно используется Robolectric вместо настоящего Android Runtime. При этом нередко в тестах используется скриншотное тестирование (например, через использование captureToImage в Compose UI Test) и сравнение рендеров с образцом, что изначально недоступно в Robolectric из-за особенностей рендеринга. В этой статье мы рассмотрим использование библиотеки Roborazzi, которая решает эту проблему, совместно с новым подходом к архитектуре Jetpack Compose приложений, которая была предложена Slack в библиотеке Circuit. Статья: https://habr.com/ru/companies/otus/articles/731150/ Платформа: Android

Ряд Фибоначчи и Мемоизация с примерами на Swift языке Это удобно не только для рядов Фибоначчи, но и для всего, что связано с дорогостоящими вычислениями, которые можно сохранить, кэшировать и использовать в будущих результатах. В этом и заключается сила мемоизации. Она используется для самых разных вещей. Ряд Фибоначчи - отличный пример. Когда дело доходит до реального интервью. Я слышал, как людей просили воспроизвести ряд Фибоначчи. Это не огромный алгоритм, он сводится к одной строчке и двум случаям: конец равен нулю и единице. Но мой совет - просто запомните эту строчку, потому что она демонстрирует такую вещь как рекурсия. Статья: https://habr.com/ru/articles/731048/ Платформа: iOS

В тему недавнего HealthGPT, CardinalKit - фреймворк с открытым исходным кодом для быстрой разработки современных, совместимых
В тему недавнего HealthGPT, CardinalKit - фреймворк с открытым исходным кодом для быстрой разработки современных, совместимых приложений для цифрового здравоохранения. CardinalKit представляет основанный на стандартах модульный подход к созданию приложений для цифрового здравоохранения. CardinalKit на GitHub: https://github.com/StanfordBDHG/CardinalKit Платформа: iOS ⭐️: 39

CustomView Android. Кольцевая диаграмма для отображения статистики В этой статье мы пройдем все этапы реализации своей Custom
CustomView Android. Кольцевая диаграмма для отображения статистики В этой статье мы пройдем все этапы реализации своей CustomView, с подробным описанием шагов, чтобы каждый смог повторить такое в своих проектах. Мы будем реализовывать кольцевую диаграмму для отображения какой-либо статистики, добавим много возможностей кастомизации диаграммы под любые виды задач, а также приправим это дело красивой анимацией отрисовки и сохранением состояния. Все будет написано на языке программирования Kotlin. Статья: https://habr.com/ru/articles/730924/ Платформа: Android

Толковых каналов по iOS не так уж много. Поэтому, рекомендуем обратить внимание и подписаться на канал нашего коллеги – iOS /
Толковых каналов по iOS не так уж много. Поэтому, рекомендуем обратить внимание и подписаться на канал нашего коллеги – iOS / Swift Tips. Там найдете: туториалы, best practices, материалы для подготовки к собесам, ну и конечно же архитектуре, куда без нее 💪 Несколько интересных постов с канала • Swift iOS interview questions and answers • 7 iOS Projects to Become a Better iOS Developer • In-App Purchases in iOS Подписывайтесь: @swift_tips

Как Senior iOS-инженеры оформляют код: производительность и ясность Эта статья - результат изучения Swift Style от The Pragma
Как Senior iOS-инженеры оформляют код: производительность и ясность Эта статья - результат изучения Swift Style от The Pragmatic Bookshelf и жизненного опыта. Это руководство может пригодиться iOS-инженеру любого уровня. Статья: https://medium.com/@james.daniel.isaiah/how-senior-ios-engineers-style-code-for-performance-and-clarity-467fa2a9d1f1 Платформа: iOS

Схема кампуса в Android приложении Еще на первом курсе я занялся разработкой мобильного приложения для просмотра расписания.
Схема кампуса в Android приложении Еще на первом курсе я занялся разработкой мобильного приложения для просмотра расписания. Приложение росло, появлялись новые функции, и спустя 3 года им пользуются 5 тысяч студентов ежедневно, но в нем не хватало одной важной детали, а именно схемы территории. Институт большой, в нем 25 корпусов, и найти нужную аудиторию с первого раза непросто. А на сайте только картинки с номерами зданий. Где аудитория 24б-456? Как к ней пройти? Это приходится выяснять на месте перед парой и, возможно, опаздывать на нее. Похожие кейсы можно долго перечислять, и все они решаются интерактивной схемой, которая всегда будет под рукой. Такие библиотеки уже есть, но все они стоят больших денег, а мое приложение денег не приносит, поэтому было принято волевое решение сделать все самостоятельно. В статье до винтиков расскажу, как сделал кастомные карты и завернул в их android-библиотеку. Статья: https://habr.com/ru/articles/729650/ Платформа: Android

FlorisBoard - это бесплатная клавиатура с открытым исходным кодом для устройств Android 7.0+. Ее цель - быть современной, удо
FlorisBoard - это бесплатная клавиатура с открытым исходным кодом для устройств Android 7.0+. Ее цель - быть современной, удобной и настраиваемой, при этом полностью уважая конфиденциальность пользователя. В настоящее время находится в состоянии ранней бета-версии. FlorisBoard на GitHub: https://github.com/florisboard/florisboard Платформа: Android ⭐️: 4.1K

Как мы стриминг пилили, или 5 неочевидных палок в колеса от Flutter Да, какие-то проблемы были из-за нашей неопытности и моло
Как мы стриминг пилили, или 5 неочевидных палок в колеса от Flutter Да, какие-то проблемы были из-за нашей неопытности и молодости технологии — мы стартовали проект в 2020 году. Были специфичные для Flutter баги. И были засады, которые неспецифичные для Flutter, но специфичны для натива — поэтому нативные разработчики, не спешите скроллить ленту дальше. Статья: https://habr.com/ru/companies/surfstudio/articles/730340/ Платформа: кроссплатформа/Flutter

AppFiles - Mobile Development - Статистика и аналитика Telegram-канала @applib