Главная | Все статьи | Дневник студента

7 советов начинающему Javascript-разработчику

Время чтения статьи ~8 минут
Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
7 советов  начинающему Javascript-разработчику главное изображение

Привет! Это продолжение моей статьи про JavaScript и то, как стать разработчиком. Эта статья предназначена для того, чтобы показать вам, за что держаться во время учебы. На мой взгляд, следующие семь советов помогут вам на пути к тому, чтобы стать компетентным разработчиком JavaScript. Они записаны в произвольном порядке. Давайте посмотрим!

1. Понять простой JavaScript

Как бы просто это ни звучало, на это часто не обращают внимания. Существует огромный контраст между разработчиками, которые могут использовать популярные инструменты и фреймворки, такие как React, Vue и Angular с одной стороны, и разработчиками, которые знают JavaScript наизусть, с другой.

Очевидно, они не исключают друг друга. Хороший разработчик на JavaScript сравнительно легко освоит новые фреймворки. Но наоборот, это может быть неправдой: если вам нравится фреймворк вроде React, вы не обязательно являетесь экспертом по JavaScript.

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

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

Взгляните на следующий код:

const getUid = (function() {
  let uid = 0;
  return function(){return ++uid;}
})();

console.log(getUid());
console.log(getUid());

Что здесь происходит? Вы знаете? И вы можете объяснить почему? Вы должны, и должны знать JavaScript, и его синтаксис, наизусть. Не потому, что вам так сказал какой-то случайный автор, а потому, что рано или поздно вы наткнетесь на стену, если вы этого не сделаете. Подобные вопросы будут задаваться во время собеседований по кодированию. Они попросят вас подробно объяснить, что происходит. Не хочу не слишком напугать некоторых из вас, но вопросы будут намного сложнее, чем этот.

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

2. Прочтите качественный контент

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

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

Назовите меня старомодным, но я твердо верю в традиционный носитель, называемый книгами. Они используются на протяжении тысячелетий, и этому есть причина. Я достаточно современен, чтобы признать, что вам физически не обязательно владеть книгой, и существует множество (цифровых) альтернатив для чтения их содержания, но это выходит за рамки моей точки зрения. (Хекслет — хороший пример).

Книги — действительно ценный источник информации, независимо от того, как вы их употребляете. Вы не можете написать книгу за одну ночь (поверьте мне на слово). Это означает, что автор приложил много усилий для сбора и записи этой информации. То же самое не всегда можно сказать о контенте, который вы бесплатно найдете в Интернете.

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

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

«Секреты JavaScript-ниндзя» Джона Ресига (создателя jQuery и бывшего сотрудника Mozilla) и др. — одна из лучших книг о JavaScript, которые я когда-либо читал. Я действительно считаю, что это золотая жила. Он лежит на моей книжной полке. И порой, спустя столько лет, я считаю себя ниндзя.

3. Ознакомьтесь с различными концепциями

С учетом сказанного, пожалуйста, поиграйте со всеми популярными фреймворками. Список, кажется, меняется день ото дня, но вы не ошибетесь, взглянув на React, Vue, Angular, Gatsby и Next.js, и это лишь некоторые из них.

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

Я не могу сосчитать, сколько раз я брал интервью у потенциальных новых коллег, и, спросив, например, почему они предпочитают работать с React, они, например, ответили: «Потому что я читал, что это самый популярный фреймворк на сегодняшний день».

Справедливо. Это могло быть правдой. Или нет. Кто знает? Но почему вы думаете, что это популярно и круто? Какие функции вам больше всего нравятся по сравнению с функциями Vue или Angular? Что в Next.js лучше React и наоборот?

В девяти случаях из десяти меня встречает тишина. Они даже не пробовали. Сформируйте образованное мнение. Ваше мнение. И возьмите их с собой на пути к тому, чтобы стать компетентным разработчиком JavaScript.

4. Понять HTML и CSS

Не забывайте, что HTML и CSS являются основой Интернета. Строительные блоки. Все, на что вы смотрите, - это элементы HTML с некоторым стилем.

React, Vue, Angular? Какими бы классными они ни были, все они в конце концов «выплевывают» HTML. Вы не можете игнорировать HTML и CSS, или относиться к ним легкомысленно. Я встречал множество программистов, которые были очень хорошими разработчиками JavaScript, но мало знали о HTML и CSS. Это проблематично.

Конечно, если вы хотите стать внутренним разработчиком JavaScript, это не будет критично. Но есть вероятность, что вы в конечном итоге создадите веб-сайты и веб-приложения, и тогда потребуется твердое понимание HTML, CSS и JavaScript как трио. Не стоит недооценивать это. Изучение JavaScript может быть трудным. То же можно сказать и о HTML и CSS.

5. Уважайте старших разработчиков

Я всегда удивляюсь, когда вижу молодых разработчиков, которые не уважают своих коллег, и не стараются их внимательно выслушать. Когда вы, будучи младшим, разговариваете со старшим разработчиком, вам не следует делать ничего, кроме как усваивать их мнение. Слушать и учиться. В конце концов, вы разговариваете с человеком, который уже много лет выполняет вашу работу. Они были там и все это видели. И хотя это может повредить вашему эго, у них гораздо больше знаний и навыков, чем у вас.

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

6. Будьте любопытными, исследуйте и приобретайте знания

Это должно быть чертой личности №1 каждого серьезного разработчика JavaScript.

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

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

Загляните за шторы. Почему это решение работает? Как это работает? Могу ли я воспроизвести это сам в следующий раз? Имею ли я сейчас четкое представление об этом? Если нет, то пора прочитать эту книгу, поговорить со старшим разработчиком или поискать в Интернете, пока вы не поймете все до единого.

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

7. Напишите код. А потом напишите еще

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

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

Я сам читал и следил за многими, многими учебниками. Но я всегда следил за тем, чтобы писать код, пока я это делал. Даже если бы я мог скопировать и вставить предоставленный код, я этого не сделал. Я всегда сам писал (точно такой же) код. Видеть код — это одно. Дословно написать самому — совсем другое дело. Вот тогда он становится частью вас и вашего репертуара. Заключение

Вопреки тому, что иногда говорят в Интернете, стать компетентным разработчиком JavaScript непросто. Это требует упорного труда, самоотверженности, усилий и времени. Удачи вам.

Никогда не останавливайтесь: В программировании говорят, что нужно постоянно учиться даже для того, чтобы просто находиться на месте. Развивайтесь с нами — на Хекслете есть сотни курсов по разработке на разных языках и технологиях

Аватар пользователя bruto
bruto 20 июля 2021
13
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 2 мая
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Django
10 месяцев
с нуля
Старт 2 мая
профессия
от 6 183 ₽ в месяц
Ручное тестирование веб-приложений
4 месяца
с нуля
Старт 2 мая
профессия
от 6 300 ₽ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 2 мая
профессия
от 5 025 ₽ в месяц
новый
Сбор, анализ и интерпретация данных
9 месяцев
с нуля
Старт 2 мая
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Laravel
10 месяцев
с нуля
Старт 2 мая
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 2 мая
профессия
от 9 900 ₽ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 2 мая
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 2 мая
профессия
новый
Автоматизированное тестирование веб-приложений на JavaScript
8 месяцев
c опытом
в разработке
Старт 2 мая
профессия
Верстка с использованием последних стандартов CSS
5 месяцев
с нуля
Старт в любое время