0
Обложка: Семь главных книг для Javascript-разработчика: от Майерса до Хавербека

Семь главных книг для Javascript-разработчика: от Майерса до Хавербека

Евгений Козак
Евгений Козак
Senior Frontend Developer, Shell

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

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

В этой подборке многие найдут знакомые имена и обложки. Проигнорировать Дугласа Крокфорда, Дэвида Флэнагана невозможно, если говорить про Javascript. Однако, надеюсь, что в списке вы найдете и новый для себя материал. Перечень расставлен по степени сложности учебника. Если вы начнете изучение языка с первой, то я рекомендую добраться и до седьмой книги для закрепления знаний.

Обложка книги «A Smarter Way to Learn JavaScript: The New Tech-Assisted Approach that Requires Half the Effort, Марк Майерс»

A Smarter Way to Learn JavaScript: The New Tech-Assisted Approach that Requires Half the Effort, Марк Майерс

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

Книга издавалась в 2014 году и, к сожалению, не обновлялась. Часть информации вряд ли вам пригодится в практике, но для ознакомления я советую прочесть учебник целиком.

Достоинства:

  • просто для понимания;
  • много практической информации.

Недостатки: 

  • книга доступна только на английском языке;
  • небольшая часть материала уже устарела.

 

Обложка книги «JavaScript and jQuery: Interactive Front-End Web Development ( JavaScript и jQuery: разработка интерактивных сайтов), Джон Дакетт»

JavaScript and jQuery: Interactive Front-End Web Development ( JavaScript и jQuery: разработка интерактивных сайтов), Джон Дакетт

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

В книге разбираются основные концепции программирования на JS, введение в JQuery и упрощение кода с помощью библиотеки. Книга научит делать сайты более интерактивными.

Достоинства: 

  • понятная подача материала;
  • множество практических примеров.

Недостатки:

  • ошибки в переводе, лучше читать первоисточник;
  • в книге большое внимание уделено библиотеке JQuery, которая уже не так актуальна в работе.

 

Обложка книги «JavaScript The good parts («JavaScript: сильные стороны»), Дуглас Крокфорд»

JavaScript The good parts («JavaScript: сильные стороны»), Дуглас Крокфорд

Книга Крокфорда — одна из самых популярных в веб-разработке. Автор разбирает много удачных и ошибочных примеров и поясняет, как можно избежать популярных ошибок. В учебнике автор расскажет JS и как писать структурированный код.

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

Достоинства:

  • ёмкая информация;
  • много примеров.

Недостатки:

  • ошибки в переводе на русском языке;
  • часть устаревшей информации в книгах «постарше» выпуском.

 

Обложка книги «JavaScript The Definitive Guide («JavaScript. Подробное руководство»), Дэвид Флэнаган»

JavaScript The Definitive Guide («JavaScript. Подробное руководство»), Дэвид Флэнаган

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

В пособии приводятся примеры работы с массивами, объектами, функциями, интеграторами и обо всем, что понадобится в работе. Помимо практической информации, автор рассказывает, как менялся JS на протяжении многих лет. Изучив учебник, вы сможете создавать сложные веб-приложения, понимать особенности API и концепции языка.

Достоинства:

  • последовательное повествование, которое формулирует понимание JS даже сложного содержания.

Недостатки:

  • книга рассчитана на длительное и последовательное изучение — не ждите быстрых ответов, как в справочнике.

 

Обложка книги «You don’t know JavaScript  («Вы не знаете JavaScript»: серия из шести книг), Кайл Симпсон»

You don’t know JavaScript («Вы не знаете JavaScript»: серия из шести книг), Кайл Симпсон

Серия структурно поделена на шесть небольших книг: от основ до разбора сложных задач: «Начните и Совершенствуйтесь»;«Область, Видимости и Замыкания»; «This и Прототипы Объектов»; «Типы и Синтаксис»; «Асинхронность и Производительность»; «ES6 и не только».

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

Достоинства:

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

Недостатки:

  • учебник выпускается только на английском;
  • нужны базовые знания JS.

 

Обложка книги «Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript (Эффективный JavaScript: 68 Конкретных Способов Использовать Мощь JavaScript), Дэвид Херман»

Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript (Эффективный JavaScript: 68 Конкретных Способов Использовать Мощь JavaScript), Дэвид Херман

Любой, кто знаком с JS, должен обращаться к учебнику Хэрмана. После его изучения вы улучшите свой подход к мета-программированию, а также код и тип написания программ в целом. Книга насыщена примерами из личной практики автора и рекомендациями для создания больших и малых приложений. Я считаю, что после прочтения вы станете программистом однозначно лучшим, чем были до. Книга научит тонкостям решений для работы с массивами и объектами, как использовать ООП программирование, объяснит функции JS и семантику переменных на практиках.

Достоинства:

  • книга не надоедает и даже захватывает внимание, как хорошая история;
  • множество примеров улучшат ваш код.

Недостатки:

  • не подойдёт для новичков.

 

Обложка книги «Eloquent JavaScript 3rd Edition ( «Выразительный JavaScript»), Марейн Хавербек»

Eloquent JavaScript 3rd Edition ( «Выразительный JavaScript»), Марейн Хавербек

Книга состоит из трех частей: основы JS, первые дни по JS и подробное обсуждение кода с точки зрения скорости. Благодаря четко структурированным и многочисленным главам учебник можно использовать, как настольную книгу языка. Множество примеров и упражнений помогут изучить синтаксис и эффективно использовать DOM.

Достоинства:

  • удобная структура;
  • множество примеров и задач;
  • есть в открытом доступе.

Недостатки:

  • неточность перевода;
  • у вас должен быть минимум средний уровень знаний JS.

В заключение я дополню, что сегодня выпускаются множество учебников по языкам программирования. К сожалению, множество книг копируют информацию друг друга, не предлагая ничего нового, или не могут объяснить читателям суть описанного. Использованные в списке учебники написаны не только практикующими специалистами, но и отличными педагогами. Материал не только полезен и уникален, но и преподносится удобно и понятно.

При изучении учебников не торопитесь. Обучайтесь последовательно, разбирая каждый пример и упражнение. Как говорил Марк Майерс, «главное — понимание и удержание информации». После прочтения, я уверен, JS для вас будет более понятным.