Можно сказать, что JavaScript – лучший друг HTML и CSS. Если проводить аналогию с мультфильмами, то HTML и CSS – это изображения героев, а JS – то, что заставляет их двигаться. Эта аналогия вполне оправдана, ведь изначально JavaScript был создан, чтобы «сделать страницы живыми». А так как программы на языке JS называются скриптами, понятно первое имя языка – LiveScript.
Однако язык был переименован: во времена создания LiveScript росла популярность Java, поэтому имя языка решили поменять на JavaScript и позиционировать его как «младшего брата» Java. Интересно, что компания Sun, которая разработала Java, к JavaScript не имеет никакого отношения – она лишь дала разрешение на использование части названия. Сейчас JavaScript занимает выгодную позицию в качестве самого распространенного языка для браузера, обладающего полной интеграцией с HTML и CSS. И хотя JS изначально создавался только для браузеров, в 2009 году проявился Node.js, который вывел этот язык за пределы браузеров. Таким образом, JS поддерживается во всех видах браузеров, на всех ОС, и на десктопных, и на мобильных устройствах.
Гибкость языка и широкие возможности его применения сделали JavaScript одним из самых распространенных языков в мире.
JavaScript – один из самых подходящих языков для начинающих программистов. С одной стороны, язык достаточно прост: программа на JS – это текст, который можно писать в любом текстовом редакторе. С другой стороны, JS содержит такие важные для программирования вещи, как алгоритмы, объектно-ориентированную модель, структуры данных. Начинать с JavaScript полезно и потому, что синтаксически он напоминает С: изучив JS, можно получить общие представления обо всех «сиобразных» языках (например, С++, C#, PHP).
Чтобы смягчить гранит JS-науки, начинающим программистам рекомендуем начать со знакомства с основой основ – HTML и CSS. А для более предметного изучения JavaScript мы подготовили подборку полезных материалов.
Книги
- JavaScript: The Good Parts — обзорная книга эксперта в области JavaScript Дугласа Крокфорда, хорошо подойдет для начинающих свой путь в разработке.
- Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming — практически ориентированная книга, которая не только дает представление о теоретических характеристиках JS, но и содержит большое количество примеров и задач. А еще она есть в открытом доступе ;)
- JavaScript: The Definitive Guide by David Flanagan — основное преимущество данной книги это актуальность: последнее издание собрало в себе весь фундамент языка. Хоть повествование можно назвать "сухим", автор все равно успевает шутить в некоторых разделах книги, а главное — объяснять материал так, чтобы у вас не осталось вопросов.
Сайты и мануалы
- Ресурсы для разработчиков, от разработчиков — содержательная документация на площадке Mozilla, которую формируют сами разработчики.
- JavaScript Tutorial — англоязычный портал с интерактивными туториалами по JavaScript.
- FreeCodeCamp — если вы ищете самые последние знания о JS, советуем данный ресурс, где параллельно изучению теории вы сможете практиковаться в написании кода. Идеальный рецепт: изучение книги и одновременно практика на сайте.
Игры
- Code Combat — для практики JavaScript и HTML
Вы — храбрый герой, которому, по всем канонам фэнтези, нужно пройти сотни подземелий и преодолеть толпу врагов. В наличии есть:
- средневековый сеттинг, множество лута и предметов, с которыми можна взаимодействовать
- чрезвычайно увлекательная атмосфера
- почти 20 часов геймплея и возможность практики JavaScript/HTML на ваш выбор
- CSS Diner — для практики CSS
Эту игру можно считать симулятором ресторанного бизнеса. Перед вами – стол, на столе – разнообразные объекты, среди которых нужно кодом "выделить" нужные предметы. За 32 уровня игры можно легко изучить почти все основы CSS, да еще и почувствовать себя ловким шеф-поваром.
- Untrusted — для практики JavaScript
Rogue-like вселенная с минималистичным дизайном, где всем можно управлять через "хакнутый" компьютер главного героя. 20 уровней, где, кроме перемещения по карте, нужно сражаться с боевыми дронами, переплывать реки, проходить лабиринты, искать ключи и побеждать боссов. Количество возможных решений зависит только от ваших скилов и фантазии.
С этой подборкой полезных материалов вы сможете сделать твердый первый шаг в изучении JavaScript. А если ваше желание стать экспертом в JS окончательно, бесповоротно и требует более решительных действий, то предлагаем зарегистрироваться на обучающие программы по JavaScript от EPAM!