Please open Telegram to view this post
VIEW IN TELEGRAM
Почему счетчик корзины иногда не обновляется?
Anonymous Quiz
12%
Проблема с статическим shared экземпляром
20%
Отсутствие механизма уведомления об изменениях
9%
Неправильная работа с массивами
39%
Race condition при добавлении товаров
20%
Посмотреть ответ
Когда приложение дорастает до сотен тысяч строк, изменения в глубоком компоненте заставляют править все промежуточные функции. Они лишь передают зависимость, что превращает рефакторинг в массовую правку и создаёт технический шум.
Эту проблему решают в разных языках: Scala, Kotlin, Android. В Swift же встроенного решения нет. Поэтому команда Яндекс Браузере сделала open-source библиотеку Implicits — механизм неявной передачи зависимостей с проверкой на этапе компиляции.
В статье автор расскажет о поиске собственного подхода. Внедрение Implicits сокращает boilerplate, ускоряет рефакторинг и улучшает читаемость кода — зависимости объявляются локально там, где реально используются. Также покажет примеры из продакшен-кода Яндекс Браузера.
#свежак #iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
Собрали лучшее о мобильной разработке. Включаем и смотрим по пути на работу.
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Быстрое ревью без запуска Android Studio и Xcode
Мобильные проекты часто отличаются глубокой вложенностью и сложными зависимостями. Чтобы качественно отревьюить PR, приходится запускать тяжелые IDE, ждать индексации Gradle или сборки проекта. Это убивает время.
SourceCraft предлагает альтернативу: умная навигация доступна прямо в браузере. Платформа понимает контекст, позволяет переходить к декларациям классов и методов, смотреть использования и типы переменных. Всё это работает мгновенно, не требуя локальной настройки окружения автора кода.
Оцените скорость работы инструмента → https://sourcecraft.dev/code-navigation-demo/uikit/pr/2040
Мобильные проекты часто отличаются глубокой вложенностью и сложными зависимостями. Чтобы качественно отревьюить PR, приходится запускать тяжелые IDE, ждать индексации Gradle или сборки проекта. Это убивает время.
SourceCraft предлагает альтернативу: умная навигация доступна прямо в браузере. Платформа понимает контекст, позволяет переходить к декларациям классов и методов, смотреть использования и типы переменных. Всё это работает мгновенно, не требуя локальной настройки окружения автора кода.
Оцените скорость работы инструмента → https://sourcecraft.dev/code-navigation-demo/uikit/pr/2040
👍2
Можете ли вы определить перечисление с такими значениями? Почему?
enum Edges : (Double, Double) {
case TopLeft = (0.0, 0.0)
case TopRight = (1.0, 0.0)
case BottomLeft = (0.0, 1.0)
case BottomRight = (1.0, 1.0)
}• Соответствовать протоколу Equatable.
• Литерально преобразовываться из типов: Int, String, Character.
В приведенном выше коде это не соблюдено.
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🎓 Твой опыт стоит дорого — стань экспертом Proglib Academy
Чувствуешь, что накопил достаточно знаний, чтобы делиться ими с другими?
Мы ищем сильных практиков, которые хотят попробовать себя в роли:
— преподавателей;
— авторов курсов;
— наставников.
Это возможность не только монетизировать экспертизу, но и прокачать личный бренд, структурировать собственные знания и вырастить новое поколение специалистов.
👉 Заполни короткую анкету
Чувствуешь, что накопил достаточно знаний, чтобы делиться ими с другими?
Мы ищем сильных практиков, которые хотят попробовать себя в роли:
— преподавателей;
— авторов курсов;
— наставников.
Это возможность не только монетизировать экспертизу, но и прокачать личный бренд, структурировать собственные знания и вырастить новое поколение специалистов.
👉 Заполни короткую анкету
👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
Представьте: ваше приложение работает, пока пользователь спит
Не просто шлёт пуши, а реально решает задачи. Заказывает билеты, планирует встречи, анализирует расходы. Это работа для AI-агентов.
Чтобы вы могли внедрять фичи уровня 2026 года, мы кардинально обновили курс «Разработка AI-агентов».
Чем это круче старой версии?
📱 Гибкость: Два трека. Можно пройти «Обзорный», чтобы понимать архитектуру, или «Продвинутый», чтобы писать агентов самому.
📱 Стек: Вы научитесь работать с
📱 Инфраструктура: Даем доступ к мощностям, чтобы обучать агентов, не перегревая локальную машину.
Это не просто «подключить ChatGPT». Это про создание автономных ассистентов внутри iOS и Android экосистем.
🎁 Акция 3 по цене 1:
Оплачиваете курс по агентам — выбираете еще два курса в подарок (хоть алгоритмы, хоть математику).
Подробности тут
Не просто шлёт пуши, а реально решает задачи. Заказывает билеты, планирует встречи, анализирует расходы. Это работа для AI-агентов.
Чтобы вы могли внедрять фичи уровня 2026 года, мы кардинально обновили курс «Разработка AI-агентов».
Чем это круче старой версии?
📱 Гибкость: Два трека. Можно пройти «Обзорный», чтобы понимать архитектуру, или «Продвинутый», чтобы писать агентов самому.
📱 Стек: Вы научитесь работать с
LangGraph и AutoGen — стандартами индустрии.📱 Инфраструктура: Даем доступ к мощностям, чтобы обучать агентов, не перегревая локальную машину.
Это не просто «подключить ChatGPT». Это про создание автономных ассистентов внутри iOS и Android экосистем.
🎁 Акция 3 по цене 1:
Оплачиваете курс по агентам — выбираете еще два курса в подарок (хоть алгоритмы, хоть математику).
Подробности тут
👏1
Please open Telegram to view this post
VIEW IN TELEGRAM
В карточках разобрали несколько инструментов, которые призваны оптимизировать поиск работы и позволят качественнее подготовиться к собеседованию.
#MadeInProglib
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
Приготовили для вас дайджест по актуальному из мира iOS, Android.
Далее следует полный технический анализ решения, которое автор в итоге реализовал, которое автор называет кэшированием с подогревом слотов.
Обеспечение корректного описания контента, удобных сенсорных областей и читаемого цветового контраста — это простые шаги, которые сделают наше приложение более доступным и удовлетворят потребности каждого пользователя.
Если вы и так являетесь приверженцем более декларативного и информативного нейминга в вашем коде, то эта статья покажет прям небольшие мелочи из официальной доки dart, которые позволят выкрутить читаемость на максимум.
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Объявляется объект при помощи ключевого слова
object, после которого следует имя объекта.Файл, содержащий только
object представляет из себя Singleton, т.е. будет создан только один экземпляр этого класса. Пример:object One {
val cats = arrayListOf<Cat>()
fun callCat() {
for (cat in cats) {
...
}
}
}Можно обращаться к методам и свойствам класса через имя объекта:
One.cats.add(Cat(...))
One.callCat()
Инициализация объявления объекта потокобезопасна и выполняется при первом доступе (лениво).
#буст #JuniorKit #Kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
В Android-разработке определение нажатия на сложную нестандартную фигуру — нетривиальная задача. Класс
Path не предоставляет готового API, а распространённые решения с проверкой пересечения маленького прямоугольника и фигуры — медленные и не всегда точные.В Jetpack Compose есть простое и эффективное решение:
PathHitTester.🔹 Как это работает
1. Создайте хит-тестер, передав ему ваш
Path:val hitTester = PathHitTester(imagePath)
2. Проверяйте координаты нажатия с помощью метода
contains(). Важно привести координаты касания к той же системе координат, что и путь:val tap = down.position - imagePosition // Применяем обратное преобразование
val isTapped = tap in hitTester // Вызывает hitTester.contains(tap)
🔹 Ключевые особенности и преимущества
PathHitTester даже для обработки событий перетаскивания (drag) с высокой частотой.newPath) вместо создания нового объекта.🔹 Получение пути из изображения
В демонстрационном видео используется библиотека pathway. Её основная функция — генерация
Path из Bitmap:val contour = bitmap.toPath().asComposePath()
Эта операция находит контур по прозрачным пикселям, поэтому изображение должно иметь прозрачный фон.
🔹 Итог
PathHitTester — это мощный и простой API Compose, который решает старую проблему детектирования нажатий на сложные фигуры. Он быстрый, точный и избавляет вас от необходимости писать громоздкие и ненадёжные костыли.#PixelPerfect #MiddlePath #Kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM