Статьи

Тревога по JavaScript — Помощь под рукой

Эта статья была рецензирована Крисом Перри , Нурией Суазо и Вилданом Софтиком . Спасибо всем рецензентам SitePoint за то, что сделали контент SitePoint как можно лучше!

Тревога по инструменту JavaScript (или, как принято все сокращать, ТА) теперь стала делом, и не обязательно хорошим способом. Это то ужасное чувство, которое возникает у вас, когда вы переполнены множеством блестящих игрушек для разработчиков и не в состоянии отфильтровать постоянный толчок адвокации сообщества.

Как и его более авторитетный двоюродный брат, информационная перегрузка (IO), TA может привести к путанице, головным болям, промедлению и, в некоторых серьезных случаях, сделать жертву совершенно инертной из-за нерешительности. Тем не менее, для тех, кто чувствует, что у него плохая доза ТА, лечение довольно простое: сохраняйте спокойствие и продолжайте.

Помни, в чем ты хорош

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

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

Лошади для Курсов

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

Многие библиотеки, которые борются за наше внимание в наши дни, — это те, которые используются для создания удобных одностраничных приложений , которые обычно известны как MVC (или MV Wh независимо ). Если вы или ваша компания часто подаете заявки такого рода, то стоит ознакомиться с ними. Если, как и я, вы не делаете много таких вещей, то вам не нужно слишком беспокоиться о них. Это не значит, что вы не должны знать, какую проблему они решают, но при условии, что у вас IQ выше 90, вполне вероятно, что вы сможете справиться с чем-то вроде инфраструктуры SPA без особых домашних заданий.

Просто потому, что это модно

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

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

Остерегайтесь умных слов

Говоря о тенденциях, некоторые библиотеки и фреймворки (не говоря уже об именах, например, Angular, гм ) стали идеями CV. Когда я разговаривал с некоторыми рекрутерами, первый вопрос, который мне задали, это «Какая у вас версия Angular?». Любой разработчик, достойный своей соли, должен ответить на Angular 8 и посмотреть, каков будет ответ! Но помимо того, что это полезно, когда дело доходит до ликвидации плохо информированных рекрутеров, следует избегать умных слов.

Вид с воздуха на пейзаж

Многие инструменты там, якобы, делают то же самое. Быстрый поиск в Интернете даст множество результатов, сравнивая самые популярные друг с другом, Grunt и Gulp — запоминающийся пример. Если вы когда-нибудь немного запутались в том, как тот или иной инструмент вписывается в ландшафт, быстро найдите пост, в котором какая-то добрая душа приложила усилия к рисованию этой картины, например, страница инструментов переднего конца Фреда Сарменто . Как только я вижу, как какой-то новый ребенок на блоке вписывается в общую картину, моя ТА снижается.

Будь проще

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

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

Автоматизация задач поможет упростить и ускорить рабочий процесс, поэтому неудивительно, что наиболее мощными и популярными инструментами являются менеджеры задач и модулей (например, Webpack , Gulp ). Эти инструменты могут позаботиться о таких вещах, как подсказка кода, объединение, минификация и тестирование. Я не буду рекомендовать это здесь, но скажу, что если бы мне пришлось выбрать что-то, без чего я не смог бы жить, был бы один из тех парней.

Выбор инструмента

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

  • Звезды GitHub или npm- загрузки — широко ли он используется по сравнению с аналогами?
  • Документация — понятно, как настроить, как работает API и т. Д.?
  • Размер сообщества — есть ли много интернет-ресурсов для этого?
  • Последний коммит — прошло много лет с момента его обновления?
  • Сравнение характеристик — как оно соотносится с аналогами?
  • Хорошо играет с моим шаблоном — например, будет ли он работать с CommonJS и Browserify ?

Есть некоторые крупные организации (например, Facebook), у которых есть влияние, чтобы действительно продвигать свои товары ( React ), и это может вызвать чувство не в курсе, если вы не на борту. Я не говорю, что у них не так много положительных качеств, но я считаю, что об инструменте следует судить по его достоинствам, а не только потому, что он был рожден крупным игроком.

Тратьте свое время с умом

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

Библиотеки и плагины будут приходить и уходить, но проблемы с проектированием и сборкой сохранятся.

Другим аспектом работы каждого разработчика, которому можно уделять меньше внимания, чем оно заслуживает, является отладка. Как бы важно это ни было, оно может упасть на второй план, когда есть так много других привлекательных отвлекающих факторов. Знание того, как правильно тестировать и отлаживать свой код, сэкономит часы мучений. Самые популярные инструменты не такие временные, как другие, которые я упоминал в других частях этой статьи, поскольку они разработаны самими производителями браузеров — те, которые предлагают Chrome и Firefox , высоко ценятся в сообществе.

Недавний выпуск ES6 означает, что разработчики JavaScript теперь имеют более надежный и многофункциональный язык для написания. Это также означает, что ваши навыки программиста более переносимы на другой язык или с него, так как ES6 охватывает многие вещи, которые другие OO и функциональные языки принимают как должное. Если бы на каком-то аспекте JavaScript стоило сосредоточиться, я бы сказал, что это: сам JavaScript.

Вывод

Вы помните времена Flash, Java-апплетов и изображений для несистемных шрифтов? Что бы вы ни делали, вам просто нужно доверять мне: тогда это было не красиво. Многие сайты прошлых лет не получили бы высокой оценки по SEO, удобству использования, доступности или отзывчивости.

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

Заключительное сообщение таково: автоматизируйте все, что можете, не отвлекайтесь на тренды, сосредоточьтесь на ваших основных навыках разработчика и используйте только те вспомогательные библиотеки, которые вам действительно нужны. Больше всего: сохраняйте спокойствие, все в порядке, Интернет находится в отличном месте и становится лучше с каждым днем.