Compose Animations - группа библиотек, которые помогут вам создавать лучшие анимации в Jetpack Compose. API создания анимации предоставляет богатый функционал для обработки изменения состояния, но вам необходимо реализовать некоторый шаблонный код, когда дело доходит до других типов анимации. Вот он и реализован в этих библиотеках.
Библиотека на GitHub: https://github.com/touchlab-lab/compose-animations
Платформа: Android
👋: 7
Библиотека на GitHub: https://github.com/touchlab-lab/compose-animations
Платформа: Android
👋: 7
Принцип KISS для Swift-разработчиков
В первую очередь программисты пишут код, пишут модульные/UI тесты, выбирают архитектуры и делают многое другое. Поскольку программирование является самым фундаментальным в программной инженерии, эта статья посвящена только этому. Она пытается показать, можно ли заменить трудный для понимания и подробный код более простым и лаконичным, сохраняя при этом то же поведение. Таким образом, она следует принципу KISS. Принцип объясняется путем сравнения фрагментов кода в пяти различных сценариях. Хотя сниппеты написаны на Swift, большинство основных идей можно применить и в аналогичных языках.
Перевод статьи: https://apptractor.ru/ksss
Платформа: программирование
👋: 340
В первую очередь программисты пишут код, пишут модульные/UI тесты, выбирают архитектуры и делают многое другое. Поскольку программирование является самым фундаментальным в программной инженерии, эта статья посвящена только этому. Она пытается показать, можно ли заменить трудный для понимания и подробный код более простым и лаконичным, сохраняя при этом то же поведение. Таким образом, она следует принципу KISS. Принцип объясняется путем сравнения фрагментов кода в пяти различных сценариях. Хотя сниппеты написаны на Swift, большинство основных идей можно применить и в аналогичных языках.
Перевод статьи: https://apptractor.ru/ksss
Платформа: программирование
👋: 340
ShowTime - это самый простой и понятный способ показать все ваши прикосновения и жесты на экране. Библиотека идеально подходит для демонстрации, презентации или видео. ShowTime даже отображает уровень прилагаемой силы и может быть настроен для отображения фактического количества выполненных нажатий. События Apple Pencil можно настраивать и отключать по умолчанию. ShowTime работает с одно- и многооконными приложениями, а также с виджетами.
GitHub: https://github.com/KaneCheshire/ShowTime
Платформа: iOS
⭐️: 370
GitHub: https://github.com/KaneCheshire/ShowTime
Платформа: iOS
⭐️: 370
Oops No Internet - простой диалог и snackbar, который говорит пользователю о том, что у него нет Интернета. Автоматически появляются и исчезают в зависимости от состояния подключения к Сети.
Библиотека на GitHub: https://github.com/ImaginativeShohag/Oops-No-Internet
Платформа: Android
👋: 108
Библиотека на GitHub: https://github.com/ImaginativeShohag/Oops-No-Internet
Платформа: Android
👋: 108
This media is not supported in your browser
VIEW IN TELEGRAM
SoftButton - эта библиотека позволяет вам добавить неоморфный дизайн к вашим UIButton в Swift. Она поддерживает как темный, так и светлый режим, реагирует на нажатия, а также предлагает параметры настройки радиуса угла и выступа кнопки.
Библиотека на GitHub: https://github.com/PallavAg/SoftButton
Платформа: iOS
⭐️: 1
Библиотека на GitHub: https://github.com/PallavAg/SoftButton
Платформа: iOS
⭐️: 1
DeepfakeHTTP - фейковый веб-сервер, который использует HTTP-дампы как источник ответов. Можно использовать для тестирования взаимодействия с мобильными клиентами. Поддерживает тестирование и прототипирование REST, GraphQL и других API.
Сервер на GitHub: https://github.com/xnbox/DeepfakeHTTP
Платформа: веб
⭐️: 144
Сервер на GitHub: https://github.com/xnbox/DeepfakeHTTP
Платформа: веб
⭐️: 144
SegmentedArcView - progress view с широкими возможностями кастомизации. Вы можете задать любое количество сегментов, каждый отдельный сегмент можно настроить с помощью градиента, есть возможность анимации, поддержка RTL.
Библиотека на GitHub: https://github.com/edgar-zigis/SegmentedArcView
Платформа: Android
⭐️: 73
Библиотека на GitHub: https://github.com/edgar-zigis/SegmentedArcView
Платформа: Android
⭐️: 73
Производительность и скорость: как в Duolingo внедрили MVVM на Android
Приложение Duolingo начало испытывать проблемы роста из-за сложностей масштабирования их Android-архитектуры. Они смогли решить эти проблемы с производительностью и восстановить продуктивность разработчиков за счет рефакторинга до архитектуры Model-View-ViewModel и использования Android Jetpack Dagger и Hilt для внедрения зависимостей.
Перевод статьи: https://apptractor.ru/mmndr
Платформа: Android
Приложение Duolingo начало испытывать проблемы роста из-за сложностей масштабирования их Android-архитектуры. Они смогли решить эти проблемы с производительностью и восстановить продуктивность разработчиков за счет рефакторинга до архитектуры Model-View-ViewModel и использования Android Jetpack Dagger и Hilt для внедрения зависимостей.
Перевод статьи: https://apptractor.ru/mmndr
Платформа: Android
Как подготовиться к iOS-собеседованию
Илья Кузнецов, Principal iOS Engineer в inDriver, рассказывает о процессе смены работы и прохождении собеседования iOS-разработчика.
Статья: https://apptractor.ru/iossbs
⬆️: +14
+ Собеседование разработчика: 50 вопросов и ответов для iOS #1 и #2
Илья Кузнецов, Principal iOS Engineer в inDriver, рассказывает о процессе смены работы и прохождении собеседования iOS-разработчика.
Статья: https://apptractor.ru/iossbs
⬆️: +14
+ Собеседование разработчика: 50 вопросов и ответов для iOS #1 и #2
Forwarded from Mobile Development by AppTractor
Вакансия: 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
Киев, 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
gen-tech.breezy.hr
Android Developer (OBRIO) at Genesis
OBRIO - це одна з найбільших та найуспішніших компаній, яка входить в екосистему бізнесів Genesis. Ми розвиваємо наші продукти вже 2 роки і маємо у своєму портфоліо чотири додатки та один успішний exit. Наша щомісячна аудиторія становить понад 2 млн. користувачів…
TTProgressHUD - легкая библиотека для показа HUD-ов на SwiftUI. Сделаны в стиле Apple.
Библиотека на GitHub: https://github.com/honkmaster/TTProgressHUD
Платформа: iOS
⭐️: 70
Библиотека на 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
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
Приложение на 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
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
Библиотека для 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
Основная идея 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
Исходники на 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
В первый день в 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
Видео: https://www.youtube.com/playlist?list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE
Исходники: https://github.com/jjohannes/understanding-gradle
Платформа: Android
⭐️: 6
Forwarded from Mobile Development by AppTractor
#ДатаДня: 256 день года - День Программиста. С праздником и хорошего кода 😀
Документируем код Kotlin с KDoc
Совсем простое введение в KDoc — язык написания документации для кода на Kotlin.
Перевод статьи: https://apptractor.ru/info/articles/kdoc.html
Платформа: Android
👋: 141
Совсем простое введение в KDoc — язык написания документации для кода на Kotlin.
Перевод статьи: https://apptractor.ru/info/articles/kdoc.html
Платформа: Android
👋: 141