Дорожная Карта Разработчиков Android В 2019 Году

Всем привет! У нас есть отличные новости.

Базовый курс начинается в этом месяце в Otus «Андроид-разработчик» , и «Специализация Android-разработчик» , который включает в себя целый пакет курсов.

В связи с этим делимся с вами полезной статьей, перевод которой посвящен этим запускам.



Дорожная карта разработчиков Android в 2019 году

2019 год — подходящее время, чтобы стать разработчиком Android. Учитывая инновации и прогресс, которые сейчас происходят в сфере Android-разработки, можно сказать, что сейчас самое время стать частью этого движения.

Последние достижения в Kotlin, Android Things и других технологиях делают Android приоритетным направлением развития для новичка, давая возможность получать актуальную информацию и двигаться вперед в определенном направлении.

Я решил написать это руководство, подумав о том, как я сам прошёл аналогичный путь в 2017 году.

Надеюсь, оно поможет вам стать тем Android-разработчиком, которым вы хотите стать.

Начнем с самых основ.



Начните разработку для Android

  1. Изучите основы Java на Глава первая Java ;
  2. Установить Android-студия ;
  3. Установите Kotlin в Android Studio (вы можете пропустить этот шаг, если не планируете изучать Kotlin в этом году);
  4. Проверить Пользовательский интерфейс Android и узнайте больше о компонентах XML и View.
Когда вы это сделаете, у вас не только будет хорошая среда разработки для создания приложений Android, но вы также будете хорошо понимать базовую терминологию, используемую разработчиками в большинстве учебных пособий.

Теперь вы можете создавать простые приложения и внедрять в них новые функции.

Не стесняйтесь начинать с пустого рабочего пространства.

При наличии фантазии и умений вы легко сможете заполнить его самостоятельно.

После того, как вы поигрались с идеями, ваша следующая цель на 2019 год — создать игру, которая поможет вам развиться как разработчика, создающего приложения для миллиардов.

Теперь перейдем на второй уровень!

Рост как Android-разработчика

Следующий список необходимо заполнять шаг за шагом.

Он станет для вас лестницей, поднявшись по которой, вы сможете узнать что-то новое, реализовать себя и двигаться вперед.

  • Понимать жизненный цикл активности для продвижения работающего приложения;
  • Используйте динамичный и гибкий дизайн пользовательского интерфейса с помощью фрагментов;
  • Научитесь отлаживать свое приложение для Android. Для этого вы можете использовать отладчик Android Studio;
  • Изучите действия Android, чтобы создать экраны, на которых пользователь сможет перемещаться по вашему приложению;
  • Почувствуйте контекст в Android;
  • Изучите REST и HTTP, поскольку большинство профессиональных разработчиков хорошо разбираются в аспектах REST и HTTP;
  • Научитесь использовать многопоточность:
    • Узнайте, как запустить основной поток;
    • Понимать важность многопоточности;
    • Изучите предоставленные классы, которые помогут вам быстро научиться использовать многопоточность;
    • Узнайте, как Android обрабатывает потоки на уровне системы и как это может повлиять на выбор архитектуры приложения и любых ее аспектов;
    • Познакомитесь с нюансами работы системной памяти и многопоточного кода;
    • Узнайте, как применять многопоточные решения для решения объемных и сложных задач.

  • Станьте экспертом в обработке изменений конфигурации:
    • При сохранении объекта при изменении конфигурации;
    • Самостоятельная обработка изменений.

  • Понимание баз данных и SQL:
    • Облачные базы данных;
    • Оффлайн и локальные базы данных;
    • Офлайн-архитектуры и базовые офлайн-практики.

  • Узнайте о поставщиках контента:
    • Узнайте, как обмениваться данными с другими приложениями;
    • Узнайте, как получить доступ к данным из других приложений;
    • Создайте поставщика контента, который поможет другим приложениям безопасно получать доступ и изменять данные в вашем приложении;
    • Поиграйтесь с поставщиком календаря и поставщиком контактов.

  • Узнайте о лучших сторонних библиотеках Android. [Самый полезный и широко используемый] :
    • ОкHttp
    • ГСОН
    • Модернизация
    • Скольжение
    • Нож для масла
    • Крашлитикс
    • Гуава
Все эти шаги помогут вам развить глубокое профессиональное понимание экосистемы Android и подготовят вас к работе как минимум с 10-15 различными типами бизнес-кейсов приложений для Android.

Изучите шаблоны производительности Android

Если вам действительно нужен чрезвычайно мощный и запоминающийся опыт работы с Android, шаблоны производительности станут отличным подспорьем.

Заполнив следующий список занятий, вы не только научитесь их использовать, но и познакомитесь с теми, которые, возможно, пропустили.

Шаблоны производительности — потрясающий инструмент в руках разработчика Android. Итак, когда речь идет о шаблонах производительности Android, вам необходимо знать следующее:

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

    Узнайте, как использовать Handlerthread для управления этими процессами по-разному;

  • Научитесь бороться с утечками памяти;
  • Узнайте, как объединить IntentService с многопоточностью для большей эффективности;
  • Изучите шаблоны производительности служб Android, чтобы отключать службы, как только они заканчиваются;
  • Познакомьтесь с контейнерами хэш-карт, специфичными для Android, чтобы сбалансировать производительность и память при создании приложений;
  • Узнайте, как использовать инструмент мониторинга памяти, чтобы увидеть, как распределение влияет на производительность вашего приложения;
  • Оптимизировать приложения для использования в сети с помощью кэширования;
  • Оптимизируйте скорость сетевых запросов вашего приложения;
  • Узнайте, как бороться с утечками просмотров;
  • Узнайте, как работает сборщик мусора;
  • Поймите, как обновление визуальных свойств вашего приложения влияет на производительность;
  • Получите глубокое понимание Vsync;
  • Поймите, как соотносятся пользовательский интерфейс и графический процессор Android, чтобы обнаружить сложности, которые необходимо преодолеть, чтобы обеспечить бесперебойную работу вашего приложения;
  • Поймите, как создать приложение, обеспечивающее скорость 60 кадров в секунду без пропуска кадров, а также поймите, сколько других приложений конкурируют с вашими за системные ресурсы, и разработайте стратегии для их обработки;
  • Узнайте, как отслеживать производительность графического процессора и улучшать рендеринг вашего приложения;
  • Изучите стратегии, которые помогут меньше разряжать батарею;
  • Соревнуйтесь с другими разработчиками, чьи приложения находятся в лучшем разделе PlayStore, и постарайтесь улучшить время запуска.

    Посмотрим, как далеко ты сможешь зайти.

  • Уменьшите размер вашего приложения.



Поднимемся на третий уровень!



Погрузитесь глубже в оптимизацию памяти с помощью инструментов Bitmap

Узнайте, как использовать Glide для обработки растровых объектов в приложении Android. Вы столкнетесь с проблемами при обработке огромного количества контента в вашем приложении, которое требует извлечения изображений, их декодирования и отображения растровых объектов.

Если вы не научитесь делать это правильно, ваше приложение не будет успешным, потому что пользователи могут подумать, что оно недостаточно хорошее.

Обратите внимание, что теперь вам необходимо иметь возможность обрабатывать до 48 МБ растровых объектов изображения камеры, которые в настоящее время может создавать камера пользователя.

Они могут легко съесть всю доступную память.



Компоненты архитектуры Android

Одной из самых важных вещей, которые я узнал как разработчик Android, была способность внедрять инновационные методы в архитектурах и их компонентах.

Как только я начал выходить за рамки MVP, MVVM, MVx и т. д., я понял, что вокруг этих архитектурных компонентов существует огромное пространство для инноваций.

Например, еще в 2017 году настройки BLE (Bluetooth с низким энергопотреблением) по умолчанию не соответствовали необходимому уровню.

Понимание того, что этот архитектурный компонент можно улучшить за счет создания промежуточной сервисной библиотеки, стало для меня настоящим откровением.

Итак, чтобы хорошо разобраться в этой теме, я бы предложил вам выбрать отдельные архитектурные компоненты вашего приложения и изучить методы их оптимизации.

Вот те, которые приходят на ум:

  • Привязка данных
  • Жизненные циклы
  • LiveData
  • Навигация
  • Пейджинг
  • Комната
  • Модель представления
  • Менеджер работ


Станьте профессионалом в области тестирования

Вы же не хотите стать одним из тех разработчиков, которые, обнаружив ошибку, говорят: «На моей машине все работает нормально», не так ли? Итак, основываясь на знании архитектуры вашего приложения и ее оптимизации, создайте модульные тесты (JUnit4), научитесь использовать Espresso и сосредоточьтесь на отчетах о покрытии кода, которые порадуют ведущих разработчиков и VPE. Подумайте, чем эти отчеты могут быть полезны другим разработчикам, тестировщикам, менеджерам и другим заинтересованным сторонам и помогут им понять и расставить приоритеты в критических проблемах с производительностью приложений.

Не забывайте автоматизировать и повторно использовать тесты, насколько это возможно.

Такой подход откроет вам путь к лидерским позициям.



Реактивное программирование с помощью RxJava

Само собой разумеется и, скорее всего, этот аспект является самым важным в вашей краткое содержание и ваше профессиональное портфолио.

Есть много мест, где вы можете на практике научиться работать с RxJava. Рекомендую следующие источники:

Они послужат хорошей отправной точкой на пути к освоению RxJava и ее аспектов.

Если вы хотите узнать больше о RxJava, обязательно ознакомьтесь с ними, а также ознакомьтесь:

  1. Полная глубина Observables в RxJava;
  2. Реализация кэширования в RxJava.


Узнайте все о Кинжале

Следующие шаги помогут вам стать профессионалом в Dagger:
  1. Просмотрите документацию и полностью поймите процесс внедрения зависимостей;
  2. Составьте список ограничений;
  3. Создайте проект и используйте в нем Dagger 2.


Станьте экспертом по безопасности

Профессиональный Android-разработчик и специалист по информационной безопасности? Ух ты! Не часто одному человеку удается это совместить! Вот несколько вещей, которые вы можете проверить в 2019 году, чтобы помочь вам стать таковым:
  • Узнайте, как изолировать данные и код вашего приложения от других приложений;
  • Изучите криптографические функции и реализуйте их;
  • Научитесь снижать риски, связанные с ошибками управления памятью;
  • Узнайте, как лучше всего использовать разрешения пользователей для управления данными приложений;
  • Надежно храните и шифруйте данные: в локальном хранилище, на лету или в облаке;
  • Станьте экспертом по контент-провайдеру, чтобы обеспечить безопасный доступ;
  • Убедитесь, что вы скрываете данные (имеется в виду запутывание);
  • Узнайте, как реализовать собственные решения безопасности, не входящие в основной стек Android;
  • Проведите аудит сторонних библиотек, чтобы разбить их по уровням уязвимостей и создать для себя исследовательский документ, который поможет в будущем;
  • Работайте над тем, чтобы сделать BLE более безопасным.

    Я закончу здесь.

    Я надеюсь, что эта статья поможет вам стать профессиональным Android-разработчиком, если вы начнете прямо сейчас, в 2019 году!

Вот и все.

Ждем ваших комментариев! Теги: #Android #Разработка Android #программирование #разработка приложений для Android #Советы по карьере #Дорожные карты #Руководства и учебные пособия

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.