Натянули сову на глобус – эмблема ГУР остатков Украины как символ системной идиотии режима

Каково это – быть Android-разработчиком </h2>

Конечно же, есть свои сложности и проблемы, но это как и в любой профессии.

Дима Суздалев подметил, что опыт Android-разработчика – это про то, что ты знаешь «куда ходить не надо». Ну а если ты все-таки пришел не туда, то знаешь, как это «не туда» обойти.

А вот Рома сравнил Android-разработку с хождением в веригах (тяжелые железные цепи): идти можно, но, так сказать, больновато. В пример привел знакомую для любого разработчика ситуацию, когда элемент, от которого ты ждешь обычного поведения, вдруг перестает работать. Или, например, такое случается вообще только на конкретном устройстве («привет» многотысячному парку китайских девайсов).

Или вот как еще бывает: допустим, в Google есть баг в API, который отрабатывает конкретным образом. Ты уже к этому привык, не забываешь делать обходной путь и во всех проектах с этим живешь. Но вдруг в какой-то момент Google исправляет этот баг, и теперь все, что ты делал до этого, ломает приложение. И снова с этим приходится что-то делать.

Разработка похожа на Lego – местами сложно, но прикольно! Ты сидишь и строишь. И тебе это нравится, ведь если не любишь Lego, то не будешь в него играть 😉

Про новинки в области Android-разработки </h2>

В последнее время чуть ли не каждый год Google представляет разные полезные штуки для разработчиков: Jetpack Compose, Navigation Component, Data Store и прочие Security Identity Credentials.

Дима рассказал, что ему нравится подход Google к разработке Jetpack Compose. Он успел его уже опробовать и особенно отметил гайды и отличную документацию, где все пояснено и есть примеры кода.

Что касается Navigation Component, то эта библиотека показывает себя хорошо как инструмент для несложных приложений. С ее помощью можно быстро накидать навигацию и неплохо ею управлять. Ребята подметили, что было бы совсем хорошо, если бы Google добавил туда быструю генерацию графа.

Подробное обсуждение Dagger/Hilt и Anvil с 01:02:02.

Полезные материалы </h2>

  • Android. Clean Is Dead. Заблуждаетесь;
  • Anvil – плагин для упрощения даггеризации вашего приложения;
  • Доклад Rich Hickey о Simple vs Easy;
  • A Philosophy of Software Design — книга про дизайн софта, определение его сложности, подходы к её уменьшению, хорошо читается, чёткие определения;
  • Очень крутой обзор архитектурных проблем как паттернов и способов их решения;
  • Чистая архитектура. Искусство разработки программного обеспечения;
  • Объектно-ориентированный анализ и проектирование;
  • Опыт добавления HMS в проект от команды Redmadrobot SPb.

Строили и построили: архитектура Android-приложений </h2>

Сегодня для проектирования приложения недостаточно просто взять традиционную архитектуру. Необходимо посмотреть на конкретные задачи бизнеса и самостоятельно создать ее с нуля.

«Конечно же, в голове общие подходы проектирования держать нужно, но “натягивать сову на глобус не стоит”», — говорит Артем. Если бизнес-задачи не ложатся в привычный clean и MVVM, следовательно, не нужно их использовать. Вот и все.

Важно понимать, что архитектура — это не инструкция, а набор решений, которые можно применить в работе. Вася Червон объяснил это так: «Ты знаешь, что плита должна иметь определенный вес, чтобы не раздавить стены, или же стены должны быть настолько прочными, чтобы ее выдержать. И чтобы строить, необходимо держать эти правила в голове».

Это всё вопрос опыта, поэтому, если разработчик не очень понимает, какую архитектуру нужно делать, то стоит проконсультироваться со старшим товарищем. Но, конечно, не с тем, кто скажет: «Делай MVVM, это круто».

Для эффективных архитектурных решений нужно читать много книг по проектированию систем, чтобы понимать, в каких ситуациях какие решения могут меняться и как их применять. Подробнее о книгах поговорили с 01:35:06.

Тайминг </h2>

01:58 – Вася Чирвон рассказывает о том, как он попал в Android-разработку.

03:25 – А теперь Дима Суздалев о своем пути.

14:52 – Куда движется платформа Android.

25:05 – Сложно ли разрабатывать приложения под Android.

34:30 – Сложнее ли стать хорошим Android-разработчиком, чем iOS-разработчиком.

58:01 – Немного о Jetpack Compose.

01:02:02 – Чуть-чуть о Hilt.

01:03:15 – Кроссплатформенная разработка: KMM/Flutter – стоит ли игра свеч?

01:20:02 – UI и мультиплатформа.

01:27:14 – Архитектура мобильных приложений.

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий