Привет, я разработчик Android-самоучка последние 5 лет с почти нулевой базой программирования. Я инженер-механик, и единственный опыт программирования, который я получил, связан с использованием MATLAB, так что помимо создания функций, циклов, это почти все.

Я собираюсь сделать общее предположение, что люди, которые будут читать это, попадают в эти две категории:

  1. Новичок в программной инженерии, хотите создать что-то с нуля и ищете совета.
  2. Вы занимаетесь программированием некоторое время, может быть, 1 или 2 года, и чувствуете разочарование по поводу того, что вы изучаете, кажется, не наравне с реальными работающими разработчиками.

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

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

Техника Фейнмана

Я полагаю, что большинство людей знали бы это, ах, технику Фейнмана.

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

Продолжайте усваивать

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

Усвоение того, что вы должны изучить, может быть чрезвычайно полезным, особенно визуализировать концепцию в своем мозгу, нарисовать картину дерева наследования класса представления в Android или дерева наследования контроллеров представления в iOS, которые будут очень полезны для вас, когда вы написание кода.

Чтобы быть опытным, вам нужно потрогать / увидеть каждую часть фреймворка, насколько это возможно, как они работают, а что нет.

Делая это, вы обретаете уверенность

Всегда спрашивайте, почему

Конструктивная самокритика

Вернуть сообществу

Вывод

В конце концов, как разработчик, вы хотите чувствовать себя комфортно, читая и усваивая код, который находится перед вами. Возможность нарисовать визуальный образ в вашем мозгу — огромный плюс. Бывают дни подъема и падения, главное двигаться вперед!