Как правильно учиться Android разработке?
===========================================

 Здравствуйте. Сразу скажу - это не вопрос из разряда как начать учить что-либо (на него я ответы уже нашел давно:) ). Это вопрос, который у меня возник сегодня - как правильно учиться чему-либо. Что я имею ввиду? Смотрите, вот я купил две книги: Head First Kotlin и Big Nerd Ranch Android 4 издание. Последнюю неделю штурмовал котлин, чтобы перестроится с Джавы (в универе учили) и перед самим андроидом изучить всё, хотя бы до начальных тем ООП. И вот последние 3 дня уже начал конкретно Андроид учить, но меня начали брать какие-то сомнения, что я не так что-то делаю. Вот как учить язык это понятно, например - изучил массивы -> на условном code wars поделал задачи по ним и т.д, а как с андроидом? Потому что, мне кажется, что втупую делать Ctrl+C, Ctrl+V с примерами в книге это такое себе. Да, я придумал себе условный проект, но он не сильно-то похож на примеры в учебнике. Так вот, стоит ли продолжать делать копипаст из книги чисто для общего понимания информации, которую дают в этой книге, а то, что нужно мне уже гуглить отдельно? Или из книги просто брать нужную мне инфу и забить на те примеры? Или вообще сначала полностью прочитать книгу со всеми примерами и уже потом приступить к проекту и гуглению, потому что к примеру, для проекта мне уже вначале нужна вторая активити, а по книге она только через 140 страниц даётся?  

  

P.S не по теме, но тоже нужно мне - по вашему личному опыту, какую посоветуете книгу по алгоритмам? 

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

Но если ты не можешь объяснить самые базовые вещи языка, что из себя представляет массив или хэш карта под капотом, как устроены классы, наследующие интерфейс Set, то рано тебе еще в андройд лезть, там слишком много информации, которую нельзя выучить кусками, всё связанно и нужно учить всё сразу. 

 Я тебе так скажу - вторая Активити тебе не нужна. Тебе нужны фрагменты. Ничего сложного там нет. Открывай developers.android.com и читай по темам. Делай свой проект, добавляй фичи. Книги на русском? Забудь, по андроиду это не катит. Книги по Котлину? Порешай коаны. 

 Открываешь Google -> developer.android   

  

Там есть раздел guides, там вся инфа которая нужна, там же на сайте есть раздел с курсами от Гугла для новичков, можешь начать с них 

> какую посоветуете книгу по алгоритмам? 

да какие нахрен алгоритмы, там изучать нечего особо. Все эти структуры данных и "алгоритмы" за пару дней изучаются.   

  

> втупую делать Ctrl+C, Ctrl+V с примерами в книге это такое себе.

 Ну так очевидно что нужно делать не в тупую, а с пониманием что делаешь и как то улучшать что дано  

  

> Да, я придумал себе условный проект, но он не сильно-то похож на примеры в учебнике.

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

  

> потому что к примеру, для проекта мне уже вначале нужна вторая активити

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

  

потом когда основы будут, тогда уже можно искать только то что нужно