Everything you need to know about State in Jetpack Compose with examples
Подробная статья с примерами про стейты в Jetpack Compose.
Начиная от того, что такое стейт в Jetpack Compose и как он определяется и заканчивая рзличными примерами работы со стейтами (remember(), mutableStateOf(), stateful vs stateless, recompositions).
Читать (En)
Adding a domain layerСтатья от Гугла, в которой достаточно подробно разбирается доменный слой, бизнес логика, Use cases на примере Now in Android.
Читать (En)
→ Android-разработка: 12 месяцев, языки Java и Kotlin
→ iOS-разработка: 10 месяцев, язык Swift
Изучить новую профессию реально, если правильно выстроить программу и усердно заниматься. Упорство зависит от вас, а о программе позаботился Практикум.
— Освоить базовые принципы программирования помогает двухнедельный курс «Бассейн».
— Программа основана на реальных требованиях работодателей к младшим специалистам.
— Интерактивный тренажёр помогает освоить теорию и закрепить её в тестах.
— Практика идёт на учебных проектах для портфолио.
А ещё на курсе много работы с опытными специалистами:
— наставники-разработчики разбирают сложные темы на живых вебинарах.
— команда поддержки отвечает на вопросы по теории в тренажёре.
— код-ревьюеры проверяют проекты и подсказывают, как их улучшить.
— кураторы помогают с организацией и расписанием.
— карьерный центр учит работать с резюме, мотивационными письмами, портфолио и готовиться к собеседованиям.
Попробуйте и напишите своё первое приложение бесплатно →
Android-разработкаiOS-разработка
iOS: Clean Architecture using SwiftUI, Combine, and Dependency Injection
Еще одна статья про чистую архитектуру в iOS. На этот раз пример реализации на SwiftUI и Combine.
Читать (En)
👩💻 Собираетесь податься в Android-разработчики? 23 декабря в 20:00 мск состоится бесплатный вебинар «View фреймворк в Андроиде» в OTUS.
🟥Урок пройдет в рамках специализации «Android Developer» с нуля — успейте в группу по выгодной цене!
- На онлайн-занятии мы освоим фрейморк View: рассмотрим базовые вьюшки в Андроиде и базовые вьюгруппы, научимся применять их на практике при разработке проекта.
👉Спикер: Абакар Магомедов, Android-разработчик в Альфа Банке. Не упустите шанс познакомиться с преподавателем и форматом обучения в OTUS. Для участия зарегистрируйтесь: https://otus.pw/pOwy/🌲А ещё сейчас действует новогодняя распродажа — 23% на все курсы!
Самый запутанный краш в моей жизни
Для решения некоторых кейсов, багов, крешей часто приходиться ковырять исходники. Вот интересная статья про поиск причины креша, который воспроизводится только на 21 api и при выключенном R8.
Креш связан с dex файлами, подробнее читайте в статье.
Читать (Ru)
Collapsing toolbar with parallax effect and curved motion in Jetpack Compose
Недавно была статья от hh, как они делали кастомный компонент (Collapsing Toolbar) на Jetpack Compose.
А вот собственно еще одна схожая статья, с подробным разбором и кодом как сделать Collapsing Toolbar с параллакс эффектом.
Читать (En)
Курс «Английский для разработчиков» от Яндекс Практикума
Для специалистов, которые хотят изменить свою профессиональную жизнь и работать в международной команде. Обучение построено вокруг рабочих ситуаций и полезных для карьеры навыков:
• Самопрезентация. Рассказ о своей роли, задачах, сфере ответственности на поведенческом интервью и в неформальной беседе.
• Работа в команде. Стендапы, планирование спринтов, демонстрация навыков командной работы на собеседовании.
• Общение в процессе работ над кодом. Код-ревью, парное программирование, комментирование алгоритмических задач на собеседовании.
• Общение с заказчиками. Уточнение технического задания, решение спорных ситуаций.
• Нетворкинг. Выступление на митапах, неформальное общение с коллегами из отрасли.
• Рефлексия и самоанализ. Ретроспектива, ревью, ответы на сложные вопросы.
Запишитесь на бесплатную консультацию. Определим ваш уровень языка, расскажем про обучение и ответим на все вопросы.
Kotlin Symbol Processing. От теории до практики
Отличная статья про Kotlin Symbol Processing.
👉 Ограничения при работе с KSP
👉 Процесс работы в общем
👉 Способы запуска KSP
👉 Как KSP находит и создаёт провайдеры
👉 Зачем нужны провайдеры
👉 Как работает отдельно взятый процессор
👉 Ссылки на типы и получение типов
Код с примером из статьи → Sample-ksp-component-builderЧитать (Ru)
Яндекс выпускает Yatagan — опенсорс-фреймворк для внедрения зависимостей, позволяющий ускорить сборкуAndroid-приложений
Интересная статья от Яндекса об их новом опенсорс-фреймворке Yatagan. Можно узнать о технических моментах, которые всплыли в процессе реализации, отличиях от Dagger и о том, какие условия идеальны для применения библиотеки.
Код на GitHub → Yatagan
Читать (Ru)
Injecting SavedStateHandle into ViewModel using Dagger 2 and Jetpack ComposeСтатья с примером, как можно заинжектить SavedStateHandle во ViewModel через Dagger 2 @AssistedInject для Jetpack Compose.
Код на GitHub → ComposeViewModelDaggerЧитать (En)
Стать сотрудником Яндекса быстрее и проще, чем кажется. Участвуйте в днях быстрого найма: решите тестовое, пройдите несколько секций собеседования и получите офер за несколько дней.
Теперь дни быстрого найма будут проходить регулярно. Чтобы вам было удобно следить за расписанием, собрали все мероприятия на отдельной странице.
Ближайшие мероприятия:
• 19–25 декабря — Week Offer для mobile, backend, frontend-разработчиков и аналитиков в команду Рекламы
Узнать подробнее и зарегистрироваться
Lessons learned while modularizing an application
Большая статья, в которой автор делится опытом масштабирования приложения, а именно разделением на модули (опыт, сложности, как разбивать на модули, структура проекта, абстракции и т.д.).
На Хабре есть перевод в 2-ух частях👉Часть 1 (Ru)👉Часть 2 (Ru)Читать (En)
Principles & Practice in Repository Layer
Еще одна статья про архитектуру, а именно про принципы и практики в data слое (репозиторий).
👉 Mapping
👉 Cache
👉 Concurrency
👉 Single Source-of-truth
Читать (En)
❗️Какие фичи Kotlin делают бэкенд-разработку легче, быстрее и безопаснее?
⚡️Приглашаем 14 декабря в 19:00 мск на бесплатный вебинар«Базы данных нового поколения: Postgres, Mongo и Redis в одном флаконе с использованием графовой БД ArcadeDb».
📚 На вебинаре мы обсудим мультимодельную базу данных ArcadeDb. Эта БД, являясь графовой в своей основе, предоставляет возможности распределенного хранения данных, ACID-транзакции, а также поддерживает диалекты PostgreSQL, MongoDB, Redis и несколько графовых диалектов.
👉 Регистрация на вебинар: https://otus.pw/aoVH/
Вебинар является частью онлайн-курса «Kotlin Backend Developer» от OTUS.
🎄После регистрации на вебинар у вас будет возможность записаться на курс по спец. цене - "Праздничные цены для отличной карьеры в IT"🎉
Присоединяйтесь!
Не обманывайте себя: вы не «исправите это потом»
А вот прикольная статья про костыли в проде, которые мы иногда пишем из-за нехватки времени или еще по каким-либо причинам, с надеждой сделать красиво когда-то потом.
Вывод: нужно стараться писать сразу нормально (что не всегда получается), заводить таски на техдолг и в каждом спринте выделять время на техдолги.
Если что, оригинал статьи тут.
Читать (Ru)