Как правильно изучать новый фреймворк или технологию?
Как вы обычно изучаете новую для себя технологию? Проходите туториалы, начинаете ковырять каждый метод из документации, пытаетесь сразу на практике применить технологию, читаете книги? Если используете все перечисленные методы, то какой помогает больше?
1. Вначале надо понять: структуру и принцип работы того, что изучаете по мануалу.
2. Затем, пробуете сделать Hello, World!
3. Если заработало, используя документацию API - делаете то, что нужно.
То есть вы ничего не изучаете? Вы сразу начинаете писать проект посматривая в доку и гугля, я правильно понимаю? Вы не выделяете себе время на учебную практику?
freestm, есть опыт, профессиональная чуйка. Беглого просмотра документации, возможно пары статей обычно достаточно чтобы начать. А более углубленное изучение происходит в процессе работы.
freestm, Задайте себе вопрос - для чего вы вообще учите эти стремительно устаревающие технологии.
Можно пол года смотреть ролики на ютубе про езду на велосипеде и зубрить инструкцию к нему. Но если вы уже ездили на двух-трех разных, то в подавляющем большинстве случаев, получив новый велик сможете сразу сесть и поехать. Да, какие-то особые трюки могут не сразу получиться. Да, могут быть проблемы с одноколесными, или с вот такими вот
тыц
Но в большинстве случаев можно сразу ехать, иногда поглядывая в инструкцию.
Stalker_RED, просто пару раз попадал в неудобные ситуации с философией "по ходу разберусь". Вот и решил, что пока досконально не изучу новую для себя технологию, за дело не возьмусь. Однако такой подход оказался еще хуже. Видимо нужна золотая середина немного смещенная в сторону "по ходу разберусь".
freestm, по мере набора опыта в разработке этот баланс сам собой у вас сместится, и не раз. Осознанно сдвигать его в сторону "досконального изучения технологии" - довольно сомнительное решение. Практические навыки в целом круче чем знание каждой страницы учебника. С другой стороны, если глядя на содержание учебника вы совсем не понимаете о чем написано вон в тех главах - желательно таки это выяснить.
Я специально выделал слово технологии, потому что технологий много, и многие действительно недолго живут. Но есть штуки, которые не меняются десятилетиями - алгоритмы и их сложность, шаблоны и принципы проектирования, основы архитектуры компьютеров и сетей. Подтягивать эти штуки выгодно в долгосрочной перспективе. Вероятно, прямо сегодня вам никак не поможет знание того, что значит буква L в акрониме SOLID или чем сложность O(n*2) отличается от O(n^2). Но пока вы не знаете об этом совсем ничего - выше уровня "кодера" вы не подниметесь.
Вот неплохая карта развития веб разработчика. Не обязательно зубрить все до корки, и не обязательно именно в том порядке как оно описано, но желательно понимать хотя-бы поверхностно о чем пишут в том или ином разделе.
На вкус и цвет все фломастеры разные. Технологии и люди тоже, как и багаж знаний, с которым люди подходят к изучению вопроса. Так что универсального алгоритма нет, а Ваш вопрос слишком общий.
Есть такое понятие "порог входа", для каждой технологии есть необходимый набор и уровень владения другими технологиями, который необходим.
Так что если будет конкретика - будет конкретика.