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

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

Итак, давай начнем с ответа на самый распространенный вопрос:

Сколько времени нужно, чтобы выучить JavaScript?

Короткий ответ - один год.

Тебе понадобится как минимум один год, чтобы выучить JavaScript от начинающего до готового к работе Junior программиста.

Эти 12 месяцев можно разделить на четыре этапа обучения.

Если у тебя есть талант и много свободного времени, возможно ты справишься быстрее. Но в любом случае, все программисты проходят через эти 4 этапа.

Новичок (1-3 месяца)

На этом этапе ты только начинаешь изучать JavaScript и знакомишься с синтаксисом языка.

В первые недели твоё внимание будет сосредоточено на основных концепциях JavaScript, таких, как переменные, функции и типы данных.

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

Основная цель на этом этапе - познакомиться с синтаксисом JavaScript, принципами работы языка программирования и создать небольшие программы, чтобы научиться писать код JS.

Продвинутый новичок (4-6 месяцев)

К четвертому месяцу ты должен быть знаком с основными концепциями и механизмами JavaScript.

Ты сможешь использовать JS для создания консольных программ и возможно начнешь разбираться с тем как добавлять его на веб страницы.

С этого момента твоя главная цель — применять полученные знания на практике.

Средний уровень (7-9 месяцев)

На этом этапе ты больше не новичок — теперь ты понимаешь основные концепции JavaScript и начинаешь работать над углублением знаний.

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

Продвинутый средний уровень (10 - 12 месяцев)

На этом последнем этапе вы теперь должны иметь возможность писать Full-Stack проекты на JavaScript, читать и понимать код, а также знать, как исправлять ошибки.

После завершения этого этапа ты будешь готов к работе Junior JavaScript разработчиком.

Почему изучение JavaScript занимает так много времени?

Причину, по которой обучение занимает так много времени, можно разделить на две:

  1. HTML и CSS не являются языками программирования
  2. JavaScript не интуитивно понятен

HTML и CSS не являются языками программирования

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

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

Неудивительно, что помимо наличия различных методов и длительного обучения по сравнению с HTML и CSS, многим новичкам сложно изучать JavaScript.

JavaScript НЕ интуитивно понятен для начинающих

Еще одна проблема с изучением JavaScript заключается в том, что он не интуитивно понятен.

В HTML все зависит от того, какие теги использовать. CSS просто выясняет, какие теги выбрать, и изменяет стиль. Если ты выучил эти правила, ты готов к работе с HTML и CSS.

Что касается JavaScript, в нем так много правил, и, кроме того, тебе нужно потратить время на размышления о том, как ты собираешься создать что-то на JavaScript, прежде чем даже писать одну строку кода! Вот почему требуется 3-6 месяцев, чтобы узнать все его правила, прежде чем он сможет полностью раскрыть свой потенциал.

Факторы, влияющие на время, необходимое для изучения JavaScript

Время уделенное практическим занятиям

Первое, что влияет на общее время, необходимое для изучения JavaScript, - это то, сколько времени ты готов тратить на практику. Если ты тратишь от 30 минут до 1 часа в день на написание кода и никогда не пропускаешь занятия, то за год твой прогресс будет очевиден.

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

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

Предыдущие знания программирования

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

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

Как вы изучаете JavaScript

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

Как и в случае любых других навыков, единственный способ стать лучше — это практика, практика и еще раз практика. А это значит, что нужно писать больше кода.

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

Но без практики, без ежедневного написания кода, ты просто провалишься в так называемый адом учебников (tutorial hell), который довольно часто встречается у новичков.

Если ты хочешь начать учиться уже сейчас, но ты еще не готов к созданию самостоятельных проектов, попробуй мой курс Full-Stack JavaScript, который на 90% состоит из практики.