Мне тут прилетело письмо, в котором автор рассказал о рекомендации, что язык нужно учить практикой и книги читать ненужно. Я тут согласен и не согласен с таким утверждением. Да, язык нужно изучать практикой, тут я на 100% согласен и всегда это рекомендую делать. Я практик и считаю, что практика помогает запоминать. Пока вы сами не увидите результат, не попробуете его лично, теория будет бесполезна.
Я сам часто начинаю изучать что-то новое именно практикой и так поступал с Swift, когда просто взял и начал писать игру на этом языке, познакомившись только с базовым синтаксисом объявления переменных, условных операторов и циклов.
Но я не соглашусь с тем, что книги не нужно читать. Даже несмотря на то, что я написал свое первое Swift приложение и опубликовал его в магазине приложений до того, как прочитал первую книгу до конца, книгу все же читал и дочитал. Есть разные книги – практические и теоретические. В практических даются примеры для того, чтобы вы набивали руку, а в теоретических даются знания, которые позволяют понимать, что вы делаете. Есть и более глубокие книги, в которых дается понимание архитектуры.
Когда начинающий берет книги в стиле Кнута по алгоритмам он после этого начинает боятся программирования и считает, что это не для него. Вы в школе сразу же начинали учиться читать по Войне и Мир или по букварю? Я по букварю и постепенно потом брал более и более сложные книги.
Книги читать нужно и если вы начинающий программист, то книги нужно читать простые. Да, они не дадут вам понимание архитектуры, но на начальном этапе вам это и не нужно. Книги читать нужно, но одновременно нужна и практика. Обязательно нужно совмещать теорию и практику.
Практика помогает увидеть вам, как что-то работает. Теория помогает понять, почему это работает именно так. Если вы знаете, что что-то работает так-то, но не понимаете почему - вы будете писать плохой код и таких часто по жизни называют говнокодерами.
Книги не смогут дать вам всех знаний, очень многое потом прийдет с практикой, но они могут дать необходимую базу, которую как раз практикой потом и будете расширять. То же касается и обратного. Реальное написание кода поможет вам запоминать и набивать руку, но для понимания все же желательны книги или хорошая документация.
Теория даже лучше позволяет понимать, какие примеры воровать с stackoverflow, а этим программисты занимаются регулярно. С помощью практики действительно хорошо, знакомится с программированием, но эта практика должна подкрепляться теорией.
Вы доверите свою жизнь врачу, который умеет разрезать ткань, но никогда не изучал строения тела и не понимает, как что-то работает в нашем организме? Он просто посмотрел в youtube как разрезать пузо и удалить аппендицит и начинает предлагать свои услуги. Да, это простейшая операция, как я слышал. Но я все же доверюсь человеку, который знает и теорию.
Точно также можно сказать и про теоретика – вы захотите удалять аппендицит у врача, который умеет это делать только изучив процесс и всю теорию за партой и ни разу не делал это в операционной? Отвечать не обязательно, я бы не стал рисковать своим пузом.
Можно привести еще кучу примеров - вождение автомобиля. Можно долбить теорию вечно, но пока вы не сядете за руль, она бесполезна. Но и садиться за руль, не зная теории тоже бесполезно, вы будете тыкать во все кнопки? Хотя наверно с вождением авто пример не такой очевиден, потому что большинство мальчиков с детства уже теоретики в этом деле.
В любой работе важны и теория и практика. В случае с ИТ, багаж необходимых начальных знаний может быть слишком большим и за счет того, что от ваших экспериментов с кодом на локальном компьютере никто не пострадает, можно начать практику как можно раньше.
Хотя был случай, когда от экспериментов все же пострадали, правда не люди, а компьютеры и информация. Знаменитый червь Морриса не должен был многократно заражать компьютеры, и эта первая крупная эпидемия произошла из-за ошибки. В результате пять лет тюрьмы создателю и что-то там серьезное по тем временам в виде тысяч долларов штрафа. Причем автора сдал или заставил сдаться собственный отец, по-другому доказать причастность нельзя было.
Так что если вы не собираетесь писать вирусы, то можно экспериментировать и даже нужно это делать на самых начальных этапах. А если соберетесь писать вирусы, то постарайтесь не стать причиной эпидемии и убедитесь, что ваш отец не сдаст вас полиции.
Раз уже мы здесь заговорили про книги и практику, затрону и видеокурсы и на сколько эффективны они. Это еще один способ подачи информации и с точки зрения эффективности - он по своему прекрасен, когда начинающий программист не понимает что происходит, он может увидеть это в видео. Это как три органа чувств - увидеть, услышать, почувствовать. Практика - это когда мы ощущаем, как что-то работает, видео курсы - мы видим, как это работает на практике и книга - мы как бы в голове слушаем рассказ автора.
И каждый человек по своему усваивает информацию, кто-то лучше усваивает на слух, кто-то на глаз, а кто-то на ощупь. Если для вас работают лучше видеокурсы - отлично, а если печатные издание - то книгу вам в руки. Но в любом случае обязательно должна быть практика. Но практика не должна быть единственным методом освоения информации, не делайте операций без теории. Я использую все три метода и вам рекомендую.
Для меня видеокурсы самый слабый с точки зрения подачи информации метод. Когда читаешь книги в ванной, в туалете или в метро, то можешь обдумывать, представлять код. С видеокурсами так не получается, ты быстро-быстро посмотрел видеоурок, потому что на паузу каждый раз нажимать не будешь, чтобы переварить сказанное в видео и пересматривать уроки тоже скучно. Поэтому я в свои последние материалы дублирую в тексте и в видео. Вы можете прочитать на сайте и увидеть это в записи. Остается только самому попробовать, чтобы закрепить результат.
Уже после того, как я написал эту заметку в чате ютуберов так же начался спор - нужны книги или нет.
Внимание!!! Если ты копируешь эту статью себе на сайт, то оставляй ссылку непосредственно на эту страницу. Спасибо за понимание
Паника, что-то случилось!!! Ничего не найдено в комментариях. Срочно нужно что-то добавить, чтобы это место не оставалось пустым.
Добавить Комментарий