Всем привет! Меня зовут Миша Вассер. Я руковожу мобильной разработкой в AGIMA, а ещё я наставник на курсе «Android-разработчик» в Яндекс Практикуме. Мы на курсе регулярно делимся со студентами полезными материалами. Сегодня публикую подборку, которая поможет новичку начать свой путь в Android-разработке.

Java

В Android-разработке основные языки программирования — Java и Kotlin. Часто новые приложения сразу пишут на Kotlin, но этот язык — надстройка над Java. Поэтому, если хочется копнуть глубоко и разбираться в Android как профи, стоит начать своё обучение с базы — с Java. Вот несколько материалов и сервисов, с которых можно начать учиться

1. JavaRush

Первый ресурс, которым хочется поделиться, — JavaRush. Ребята собрали огромное количество материалов по Java, структурировали и вдохнули в них жизнь. В сервисе есть лекции, задачи, тренажёры и многое другое. Можно даже написать свою версию классических игр вроде «змейки» или «сапёра». А ещё есть возможность общаться с сообществом — в чатах и на форумах, написав статью или задав вопрос.

JavaRush

2. Книга «Java Concurrency на практике», Брайан Гётц

Стандарт в разработке. Книга, которая даст вам прочную базу в Java-разработке и поможет изучить непростую тему потокобезопасности. Возможно, книга немного устарела, ей уже много лет. Но погрузиться с ней в основы получится отлично. Ведь книга описывает типичные ошибки написания конкурентных приложений на Java и распространённые ошибки с многопоточностью.

Читать → 

3. Java Tutorial от W3Schools 

Популярнейший сервис с онлайн-туториалами и тренажёрами по разным языкам программирования, в том числе по Java. Задачи, примеры и викторины, возможность отслеживать свой прогресс и даже просматривать справочник по языку. 

Java Tutorial

Kotlin

Если вы изучили азы работы с Java, можно попробовать поработать с Kotlin. Для этого в сети тоже есть отличные бесплатные ресурсы:

1. Jetbrains Academy


Kotlin — язык программирования, созданный компанией JetBrains. Его активно развивают и поддерживают наравне с остальными продуктами. А для новичков выпустили курс по Kotlin, который можно проходить прямо в среде разработки IntelliJ IDEA. В процессе обучения вы создадите приложение для зоопарка, изучите объектно-ориентированное программирование, создавая карточную игру, и разберётесь в алгоритмах, разрабатывая компьютерную игру. 

Jetbrains Academy

2. Книга «Kotlin в действии», Дмитрий Жемеров и Светлана Исакова

Издание обязательно к прочтению тем, кто хочет войти в Kotlin и писать на нём красиво и эффективно, а также осознать, какие фишки у него есть. Написали книгу создатели и разработчики языка из компании JetBrains. Содержание охватывает создание предметно-ориентированных языков, функциональное программирование в JVM, совместное использование Java и Kotlin. Книга написана для разработчиков, владеющих Java и желающих начать эффективно использовать Kotlin в работе.

Читать → 

3. Kotlin Bootcamp

Хороший бесплатный курс на Udacity, где можно разобрать всю базу языка в формате лекций, погрузиться во все основные блоки и начать писать код сразу в среде разработки. Курс написан в сотрудничестве с Google, и составили его эксперты Google. Обучает он основным функциям языка, которые позволят создать проект на Kotlin.

Kotlin Bootcamp

Android

Оба языка, которые мы упоминали выше, применяются для разных проектов. Это не обязательно Android-разработка. Разобравшись с основами, можем переходить к материалам, специализированным именно на Android:

1. Google Android Developers

Google начал развивать свою собственную платформу с курсами, и надо признать, что у них получилось здорово! Здесь можно найти материалы как для тех, кто только начинает свой путь в Android, так и для тех, кто хочет освоить новые фичи платформы и прокачать навыки. Кстати, тут можно найти материалы и по Kotlin. Опытным разработчикам будут интересны Jetpack Compose или Современная архитектура Android-приложений. А ещё есть программы сертификации и материалы для преподавателей. 

Google Android Developers → 

2. Ресурсы от Дмитрия Виноградова и Александра Климова

Ресурсы, которые спасали жизни тысячам Android-разработчиков в российском комьюнити и продолжают радовать интересным контентом, — ​​https://alexanderklimov.ru/ и https://startandroid.ru/ru/ .

На сайтах есть огромное количество источников, которые позволяют вкатиться в Android и Kotlin. Есть даже материалы по Compose, Dagger и архитектуре. Возможно, часть контента уже морально устарела, но базу этот массив статей помогает понять просто отлично. 

3. Android Broadcast

Можно перечислить много книг по Android — начиная с Head First Android, Android Cookbook, и заканчивая ещё десятком других, — но ведь есть ещё Youtube-канал Кирилла Розова – Android Broadcast.

Кирилл — интересный спикер в Android-комьюнити, часто зовёт к себе на канал не менее интересных парней и девушек, чтобы поговорить про Android, научить чему-то своих слушателей или просто поболтать о будущем IT. На канале есть десятки видео и плейлистов, которые точно помогут вам на пути становления как Android-разработчика. 

Например, бесплатный курс по корутинам, регулярные обзоры новостей индустрии с экспертным мнением, Code review проектов и интервью, разбор Android 13, лайфхаки, как уменьшить размер Android-приложения, и многое другое. 

4. Записи лекций Яндекс. Школы мобильной разработки: Android

Лекции Яндекс. Школы мобильной разработки: Android. Рекомендую посмотреть старые и новые выпуски, чтоб разобраться с тестами, базовыми компонентами, CI/CD и другими принципами разработки.

5. Mobile Developer 

Mobile Developer. Алексей больше рассказывает про мобильное IT в целом, и делает это интересно. А также на его канале можно найти видео, специализированные на Android, и они достаточно информативны.

6. Mobius и AppsConf

Это каналы, пожалуй, двух самых крупных ежегодных конференций по мобильной разработке в России. Доклады часто рассчитаны на более опытных разработчиков, но есть контент и для новичков. А ещё — обзоры последних технологий и трендов индустрии и разборы ответов на популярные вопросы.

7. Android Academy 

Ребята уже несколько лет пилят крутой материал по Android и приглашают классных спикеров, чтобы обучать новых Android’еров. Здесь много видео для начинающих с подробной информацией про базовые темы Android-разработки. Кроме этого — материалы по прохождению интервью и разбор тестовых заданий. 

Spoiler Alert! Следующий блок будет выглядеть страшно, если вы только начали свой путь в разработке, поэтому смело можете его пролистывать и возвращаться немного позже, ну или когда станет скучно :)

Архитектура

Код, который мы пишем, как правило, содержит какую-то структуру. Мы называем это «архитектурой». Так вот, если хочется почитать что-то про то, как строятся мобильные приложения (да и не только они, кстати), можно окунуться в мир «Совершенного кода»:

1. Книга «Совершенный код», Стив Макконнелл

Книга написана простым языком и погрузит вас в основы архитектуры. Подойдет для того, чтобы прокачать базу. Научит вас проектировать и строить приложения. Даст представление, что и в какой последовательности делать, а как поступать ни в коем случае нельзя. Автор рассказывает, как вообще происходит процесс разработки ПО от начала и до конца, что нужно предпринять, чтобы ваш код был совершенным. Книга — must have в комьюнити разработчиков. Она считается одним из лучших руководств по программированию. 

Читать →  

2. «Рефакторинг», Мартин Фаулер

Когда разработчики подрастают, они часто слышат в своей повседневной жизни слова «рефакторинг», “code smells”, «паттерны проектирования» и прочее. Крутую базу в таком направлении можно получить из этого издания. Если у вас ещё нет опыта коммерческой разработки, ООП и проектирования, эта книга перевернёт ваши представления о программировании. В примерах автор использует Java и С++, но приведённый код вполне понятен и программистам на других языках. Автор описывает проблемы, возникающие при написании кода, и даёт способы их решения. Для профессионального программиста книга написана чересчур подробно. Но новичок узнает из неё много интересного. 

Читать  → 

3. «Чистый код», Роберт Мартин 

Ещё одна книга-легенда. Её вам точно стоит прочитать. Роберт Мартин, или, как его чаще называют, дядюшка Боб — человек, который впервые ввёл понятие «чистая архитектура». 

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

Читать  →  

4. Refactoring Guru

Отличный интерактивный сервис, который позволит погрузиться в мир архитектуры, рефакторинга, принципов SOLID и прочих страшных слов, связанных с архитектурой.

Refactoring Guru → 

Telegram

Помимо книг, Youtube-каналов и интернет-ресурсов иногда круто заглядывать в телеграм-каналы. Там зачастую публикуются интересные авторские материалы. А ещё ко многим каналам привязаны чаты, в которых можно обсудить разные темы из области разработки или получить ответ на вопрос. Вот некоторые из них. Каждый найдёт себе что-то, что будет интересно:

  1. startandroid 

  2. android_live 

  3. androidev 

  4. mobile_native

  5. android_ru

  6. android_broadcast_talks 

  7. agimadev_chat

Добавить папку с каналами и чатами в Телеграме


В современном мире можно отыскать множество материалов по Android-разработке, и все они по-своему хороши. Конечно же, в этой мини-статье приведены далеко не все ресурсы, полезные начинающему разработчику. Так что, если вы знаете какой-то крутой ресурс, которого нет в этой подборке, поделитесь им в комментариях — будем расширять список вместе!

Комментарии (1)


  1. Rusrst
    15.06.2023 13:32

    Я прям каждый раз вижу статью от Яндекс практикума и каждый раз не могу понять, чему ж вы там будете учить, раз у вас java и java concurrency для начинающих? Тут ваш предыдущий лектор ещё про compose рассказывал, расскажете как его с java то по итогу связать?