Чем различаются Dagger, Hilt и Koin
В этом видео (есть и статья) Паулина объясняет, чем различаются Dagger, Koin и Hilt, и каковы последствия этих различий. Рассматривается время сборки, производительность во время выполнения и обработка ошибок. Вы также узнаете, почему говорят, что Koin построен на основе Service Locator, а не в шаблоне внедрения зависимостей.
Платформа: Android
YouTube: 👍: 47
Medium: 👏 257
В этом видео (есть и статья) Паулина объясняет, чем различаются Dagger, Koin и Hilt, и каковы последствия этих различий. Рассматривается время сборки, производительность во время выполнения и обработка ошибок. Вы также узнаете, почему говорят, что Koin построен на основе Service Locator, а не в шаблоне внедрения зависимостей.
Платформа: Android
YouTube: 👍: 47
Medium: 👏 257
YouTube
How Dagger, Hilt and Koin differ under the hood?
In this video, I'll show you how Dagger, Koin and Hilt differ under the hood and what are the consequences of those differences. We will look at build time, runtime performance and error handling. You'll also learn why Koin is said to follow Service Locator…
PermissionsSwiftUI отображает и обрабатывает разрешения в SwiftUI. Пользовательский интерфейс легко настраивается и напоминает стиль Apple. Работает с 12 разрешениями, есть дефолтные определения и иконки, но можно все сделать и свое. Доступно через Swift Package Manager.
Платформа: iOS
GitHub: https://github.com/jevonmao/PermissionsSwiftUI
⭐️: 98
Платформа: iOS
GitHub: https://github.com/jevonmao/PermissionsSwiftUI
⭐️: 98
Уроки самой страшной дизайн-катастрофы в американской истории
Не про код, но про важность UI/UX:
Проблемы начались с пульта управления реактором, который после засорения системы охлаждения станции загорелся шквалом сигнальных ламп и загудел хором звуковых сигналов. Одновременно зажглись буквально сотни сигналов и огней. Операторы поспешили их выключить, пытаясь разобраться в проблеме. Их начал накрывать туман замешательства. Они не могли понять, что происходит?! Сама панель не давала четкого представления о работе АЭС, бессмысленно группируя кусочки информации. Например, панель, показывающая утечки реактора, была рядом с панелью, сообщающей о проблемах лифта. Позже следователи обнаружили, что красные огни на панели управления могли означать четырнадцать разных вещей, плохих и хороших.
Платформа: ядерный реактор
Не про код, но про важность UI/UX:
Проблемы начались с пульта управления реактором, который после засорения системы охлаждения станции загорелся шквалом сигнальных ламп и загудел хором звуковых сигналов. Одновременно зажглись буквально сотни сигналов и огней. Операторы поспешили их выключить, пытаясь разобраться в проблеме. Их начал накрывать туман замешательства. Они не могли понять, что происходит?! Сама панель не давала четкого представления о работе АЭС, бессмысленно группируя кусочки информации. Например, панель, показывающая утечки реактора, была рядом с панелью, сообщающей о проблемах лифта. Позже следователи обнаружили, что красные огни на панели управления могли означать четырнадцать разных вещей, плохих и хороших.
Платформа: ядерный реактор
Советы по реализации темного режима в iOS
Уже прошло достаточно времени с момента появления темного режима в iOS 13, и много было написано о динамических цветах, наборах цветов, динамических изображениях/материалах и других инструментах для поддержки этой новой функции. В этой статье автор, столкнувшись с некоторыми проблемами, погружается в возможности UIKit, которые могут быть полезны при реализации темной темы.
Платформа: iOS
Medium: 👏 325
Уже прошло достаточно времени с момента появления темного режима в iOS 13, и много было написано о динамических цветах, наборах цветов, динамических изображениях/материалах и других инструментах для поддержки этой новой функции. В этой статье автор, столкнувшись с некоторыми проблемами, погружается в возможности UIKit, которые могут быть полезны при реализации темной темы.
Платформа: iOS
Medium: 👏 325
Expenso - простое приложение для контроля расходов, созданное для демонстрации современных компонентов и MVVM архитектуры.
В Android-версии внутри: Kotlin, корутины, Android Architecture Components (Stateflow, Flow, ViewModel, Room, Jetpack Navigation, DataStore), Material Components for Android.
В iOS все попроще - SwiftUI и CoreData.
Платформа: iOS/Android
GitHub: https://github.com/Spikeysanju/Expenso
⭐️: 180
В Android-версии внутри: Kotlin, корутины, Android Architecture Components (Stateflow, Flow, ViewModel, Room, Jetpack Navigation, DataStore), Material Components for Android.
В iOS все попроще - SwiftUI и CoreData.
Платформа: iOS/Android
GitHub: https://github.com/Spikeysanju/Expenso
⭐️: 180
3 вещи, которые я перестала делать вручную в Android-разработке
Пять лет назад автор статьи профессионально занялся Android-разработкой. Помимо программирования, он обеспечивает развертывание и поддержку приложений. В этой статье он описывает 3 вещи, которые он автоматизировал и больше не делает вручную.
Это:
1. Ручное обновление зависимостей.
2. Ручное форматирование кода и удаление неиспользуемых импортов
3. Ручная загрузка в Google Play
Платформа: Android
Medium: 👏 136
Пять лет назад автор статьи профессионально занялся Android-разработкой. Помимо программирования, он обеспечивает развертывание и поддержку приложений. В этой статье он описывает 3 вещи, которые он автоматизировал и больше не делает вручную.
Это:
1. Ручное обновление зависимостей.
2. Ручное форматирование кода и удаление неиспользуемых импортов
3. Ручная загрузка в Google Play
Платформа: Android
Medium: 👏 136
#ЧитателиПишут: На этой неделе писал про PermissionsSwiftUI - библиотеку запроса разрешений на SwiftUI. Оказывается, что это копия большой либы SPPermissions, которая делает тоже самое, но на чистом Swift. Запрос прав на 12 доступов, полная настройка UI, поддержка iPad, темный режим. Автор библиотеки - Иван, читатель канала, привет ему и спасибо за информацию.
Платформа: iOS
GitHub: https://github.com/varabeis/SPPermissions
⭐️: 4.2К
Платформа: iOS
GitHub: https://github.com/varabeis/SPPermissions
⭐️: 4.2К
Самые популярные вопросы с собеседований Swift и iOS разработчиков 2021
Список вопросов, которые обычно затрагивают на собеседовании разработчиков. Ответы очень коротки, но сам чеклист может пригодиться для проверки собственных знаний.
Вот тут у нас есть некоторые технические вопросы с ответами.
Платформа: iOS
Medium: 👏 335
P.S. На фото видимо типичный iOS-разработчик, 35 лет 😀
Список вопросов, которые обычно затрагивают на собеседовании разработчиков. Ответы очень коротки, но сам чеклист может пригодиться для проверки собственных знаний.
Вот тут у нас есть некоторые технические вопросы с ответами.
Платформа: iOS
Medium: 👏 335
P.S. На фото видимо типичный iOS-разработчик, 35 лет 😀
Flutter пока не смог стать надежным кроссплатформенным решением
Автор статьи (мой перевод на русский) пытался сделать приложение на Flutter для iOS, но столкнулся с рядом ошибок. Вывод его - платформа пока не очень готова к серьезной работе. По крайней мере в разрезе тех функций, которые нужны ему.
Если кроссплатформенное решение не может надежно предоставлять часто используемые функции приложения на всех поддерживаемых платформах, оно теряет свои преимущества по сравнению с нативными приложениями, и в конечном итоге теряет лояльность разработчиков.
Судя по тому немногому, что я вижу со стороны, я серьезно сомневаюсь, что Google удастся сделать разработку с Flutter таким же безупречным опытом, как нативная разработка.
Платформа: Flutter
Medium: 👏 1.4К
Автор статьи (мой перевод на русский) пытался сделать приложение на Flutter для iOS, но столкнулся с рядом ошибок. Вывод его - платформа пока не очень готова к серьезной работе. По крайней мере в разрезе тех функций, которые нужны ему.
Если кроссплатформенное решение не может надежно предоставлять часто используемые функции приложения на всех поддерживаемых платформах, оно теряет свои преимущества по сравнению с нативными приложениями, и в конечном итоге теряет лояльность разработчиков.
Судя по тому немногому, что я вижу со стороны, я серьезно сомневаюсь, что Google удастся сделать разработку с Flutter таким же безупречным опытом, как нативная разработка.
Платформа: Flutter
Medium: 👏 1.4К
Boardgame.io - бесплатный открытый клиент-серверный движок для пошаговых многопользовательских “настольных” игр. Вы пишите простые функции, описывающие, как состояние игры изменяется при выполнении определенного хода, а движок делает все остальное, автоматически преобразуя их в игру и поддерживая все многопользовательские и игровые функции. Правда, все JS, но на нем делают и мобильные проекты.
Сайт: https://boardgame.io/
Сайт: https://boardgame.io/
Контрольный список качества приложения
C первых дней появления мобильных приложений ожидания пользователей значительно выросли. Разработчики должны делать приложения не просто которые работают, но работают хорошо - от конфиденциальности до взаимодействия с пользователем. Этот раздел на сайте Google для разработчиков поможет вам быть в курсе последних требований и представляет собой чеклист с подробными руководствами в выбранных областях.
Платформа: Android
Сайт: https://developer.android.com/quality
C первых дней появления мобильных приложений ожидания пользователей значительно выросли. Разработчики должны делать приложения не просто которые работают, но работают хорошо - от конфиденциальности до взаимодействия с пользователем. Этот раздел на сайте Google для разработчиков поможет вам быть в курсе последних требований и представляет собой чеклист с подробными руководствами в выбранных областях.
Платформа: Android
Сайт: https://developer.android.com/quality
#ЧитателиПишут: Еще одна библиотека от автора SPPermissions - SPAlert. Это попапы в стиле Apple Music или отзывов в AppStore. Есть Done, Heart, Error и другие заданные шаблоны, можно конечно делать и свои на основе кастомных изображений или SFSymbols. Поддерживается темный режим.
Платформа: iOS
GitHub: https://github.com/varabeis/SPAlert
⭐️: 970
Делитесь своими любимыми и интересными библиотеками!
Платформа: iOS
GitHub: https://github.com/varabeis/SPAlert
⭐️: 970
Делитесь своими любимыми и интересными библиотеками!
Анти-паттерны RecyclerView
RecyclerView в разработке под Android - очень полезная first-party библиотека, которая заменяет традиционный ListView. За свою карьеру я видел несколько анти-шаблонов RecyclerView и недопонимание концепции его адаптера. Недавно просмотрев соответствующий фрагмент кода и подробно объяснившись с одним из моих младших разработчиков, я решил поделиться своими знаниями, поскольку считаю, что это концепции, которые должен понимать каждый Android-разработчик.
Платформа: Android
Medium: 👏 582
RecyclerView в разработке под Android - очень полезная first-party библиотека, которая заменяет традиционный ListView. За свою карьеру я видел несколько анти-шаблонов RecyclerView и недопонимание концепции его адаптера. Недавно просмотрев соответствующий фрагмент кода и подробно объяснившись с одним из моих младших разработчиков, я решил поделиться своими знаниями, поскольку считаю, что это концепции, которые должен понимать каждый Android-разработчик.
Платформа: Android
Medium: 👏 582
Примеры работы Jetpack Compose для десктопов. Два проекта от одного разработчика: stackzy для определения технологического стека приложения и name that color для определения цветов.
Внутри MVVM, Kotlin, корутины, Dagger2.
Платформа: Android
GitHub: https://github.com/theapache64/stackzy
GitHub: https://github.com/theapache64/name-that-color-desktop
⭐️: 146
Внутри MVVM, Kotlin, корутины, Dagger2.
Платформа: Android
GitHub: https://github.com/theapache64/stackzy
GitHub: https://github.com/theapache64/name-that-color-desktop
⭐️: 146
Нанять тимлида
За время работы в Рамблере, Авито и JetBrains Егор Толстой прособеседовал семьдесят тимлидов и нанял шесть из них. У него появился список вопросов и кейсов, которые он разбирает с каждым кандидатом. Если вы ищете работу, то этот чек-лист поможет разобраться, что вас могут спросить на интервью.
Платформа: любая
Сайт: https://etolstoy.com/teamlead-interview/
За время работы в Рамблере, Авито и JetBrains Егор Толстой прособеседовал семьдесят тимлидов и нанял шесть из них. У него появился список вопросов и кейсов, которые он разбирает с каждым кандидатом. Если вы ищете работу, то этот чек-лист поможет разобраться, что вас могут спросить на интервью.
Платформа: любая
Сайт: https://etolstoy.com/teamlead-interview/
Etolstoy
Нанять тимлида
Список вопросов и кейсов для интервью тимлида в IT компанию
WatchLayout - простой макет для UICollectionView, представляющий его элементы в виде кругов.
Платформа: iOS
GitHub: https://github.com/HocTran/WatchLayout
⭐️: 7
Платформа: iOS
GitHub: https://github.com/HocTran/WatchLayout
⭐️: 7
GitHub Actions для Android-разработки
Если вы разрабатываете приложения для Android, скорее всего, в какой-то момент своей карьеры вы столкнетесь с тем или иным видом CI. Если вы знакомы с фрагментацией Android, то большой выбор систем CI будет вам знаком.
GitHub Actions был запущен в ноябре 2019 года, и с тех пор зарекомендовал себя как надежное для производственной среды решение. Я использую его для Android-проектов, поэтому мой опыт (и этот пост) ограничен этой платформой.
Платформа: Android
Перевод: русский
Medium: 👏 536
Если вы разрабатываете приложения для Android, скорее всего, в какой-то момент своей карьеры вы столкнетесь с тем или иным видом CI. Если вы знакомы с фрагментацией Android, то большой выбор систем CI будет вам знаком.
GitHub Actions был запущен в ноябре 2019 года, и с тех пор зарекомендовал себя как надежное для производственной среды решение. Я использую его для Android-проектов, поэтому мой опыт (и этот пост) ограничен этой платформой.
Платформа: Android
Перевод: русский
Medium: 👏 536
AppTractor
GitHub Actions для Android-разработки
Если вы разрабатываете приложения для Android, скорее всего, в какой-то момент своей карьеры вы столкнетесь с тем или иным видом CI. Если вы знакомы с фрагментацией Android, то большой выбор систем CI будет вам знаком. GitHub Actions был запущен в ноябре…
OnTap - документация по SwiftUI “от разработчиков к разработчикам”. Основана на реальных задачах и содержит тысячи работающих примеров кода.
Платформа: iOS
Сайт: https://joinontap.com/
Reddit: 🔝793
Платформа: iOS
Сайт: https://joinontap.com/
Reddit: 🔝793
Создавая серверную часть Uber: пошаговое руководство по проектированию системы
В этой статье рассказывают о том, как создать бэкенд для высоко нагруженного приложения, подобного Uber. О требованиях, ограничениях и решениях, которые могут с ними справиться. Это статья НЕ самого Uber, а сторонних разработчиков, которые создают теоретическую основу для построения сервиса.
Платформа: Backend
Medium: 👏 1.2К
В этой статье рассказывают о том, как создать бэкенд для высоко нагруженного приложения, подобного Uber. О требованиях, ограничениях и решениях, которые могут с ними справиться. Это статья НЕ самого Uber, а сторонних разработчиков, которые создают теоретическую основу для построения сервиса.
Платформа: Backend
Medium: 👏 1.2К
IridescentView - это кастомный ImageView, который применяет радужный переливчатый эффект к изображениям в соответствии с поворотом устройства. Наклон регистрируется акселерометром и используется для расчета эффекта.
Компонент доступен для Android Java и Xamarin.Android.
Платформа: Android
GitHub: https://github.com/alexandrehtrb/IridescentView
⭐️: 4
Компонент доступен для Android Java и Xamarin.Android.
Платформа: Android
GitHub: https://github.com/alexandrehtrb/IridescentView
⭐️: 4