Доброго времени суток, Хабр. Вопрос, к сожалению или к счастью, не про программирование, а про обучение.
Последнее время изучаю Unity и C#. В планах устроиться на работу. Почитал книги, посмотрел несколько плейлистов видео, сейчас делаю свои маленькие проекты, ведь как известно: практика - лучший учитель. Но вот как раз на практике и начали возникать кое-какие вопросы.
Вот я столкнулся с проблемой или у меня есть задача, понятное дело её надо решать. А вопрос - как? Лучше ли мне самому просто шарить по документации и думать своей головой, или лучше найти такие решения на том же YouTube или форумах, но если я пойду по второму варианту, будет ли это считаться обучением? Я ведь просто нашёл готовый ответ по сути. Или это работает так: гуглишь проблему (задачу); анализируешь её, чтобы она отложилась у тебя в голове; вставляешь, изменяя, в свой проект?
Появился вопрос ещё по поводу аддонов всяких на Unity, по типу Cinemachine. Пользуются ли такими штуками вообще в компаниях или там всё кодом под себя делается?
Также насчёт паттернов, принципа SOLID и подобных штук. Когда вообще за них браться? Во время практики и применять их сразу, или вообще оставить на потом?
Возможно, ответы на эти вопросы выглядят слишком очевидно, но у меня образовалась каша в голове, а так как я в компаниях подобного рода ещё не работал и C# мой первый язык, то тем более. Хотелось бы мнения от "ветеранов" в программировании, как вы обучались и решали проблемы в начале изучения?
Решения, которые можно найти на ютубах и форумах, достойны того, чтобы находить их на ютубах и форумах.
Ничего сколько-нибудь серьезного из этих обрывков (особенно из того мусора, который на ютубах) все равно собрать не получится, голова понадобится.
"Насчёт паттернов, принципа SOLID и подобных штук": для их изучения необходим опыт, хотя бы говнокодинга, и точка приложения, хотя бы тот же собственный говнокод, в котором груда классов перепутана между собой. Разгребание этой груды позволит применить те принципы на практике, а без практики их изучать бесполезно вовсе.
Спасибо огромное за ответ. В общем, писать код на сколько я способен(т.е. говнокод) + ютюб + форумы, а потом просто переписывать проекты с новыми знаниями, что бы как раз применить теорию на практике. Я правильно вас понял?
Получите доступ к учебному порталу Udemy, выбирайте курсы по своей тематике, смотрите на рейтинги курсов, содержимое, отзывы, продолжительность, и выбирайте то что вам нужно. Смотрите сначала англоязычные, потом ищите возможно и русскоязычные версии, однако их там мало. Потратив на оплату курса 12-15 долларов, вы получите доступ к качественному и актуальному контенту. Бесплатные варианты на ютубах и форумах приведут вас к потере времени, без особых результатов.
Полезно как находить решение через документацию самостоятельно, так и использовать туториалы на том же ютубе и повторять их. Никто не мешает после повтора осмыслить это и попробовать поменять под себя. В решении на ютубе, даже в хорошем, по-любому найдутся вещи, которые можно доработать, улучшить или баги, которые просмотрел автор. И самостоятельное обучение и изучение чужой работы - оба навыка полезны.