Javascript прямо сейчас захватывает мир -- веб-приложения становятся все более и более завязанными на фронтенд. Хотя JS пока чаще всего используется для анимации выпадающих меню и валидации форм, он (при некоторой помощи магии jQuery) вырос в инструмент для создания полноценных фронтенд-приложений, включая одностраничные.
Мы пройдемся по основам Javascript и узнаем, как он используется в браузере. Вы неплохо повеселитесь, поскольку сможете увидеть результат ваших усилий прямо в браузере. К концу раздела вы будете знать все, что необходимо для создания интересного фронтенда, но мы, конечно же, только начинаем.
События управляют всем, что вы делаете при помощи Javascript в браузере. Мы ознакомимся с ними поближе, узнаем, как они работают и что с их помощью можно сделать.
Вы можете сделать многое даже с простым Javascript, jQuery и пытливым умом. Но этот раздел погрузит вас глубже в то, как Javacscipt работает и даст вам инструменты для создания более продвинутой функциональности для ваших сайтов. Некоторые предыдущие проекты, возможно, несколько выходили за горизонты вашего понимания Javascript, но теперь мы это исправим.
При помощи браузера и Javascript можно делать намного больше, чем просто манипулировать DOM, используя jQuery. Если вы хотите собирать данные с сайтов или с собственного бэкенда, отправлять формы или создавать более сложные игры, вам придется понять, как Javascript работает с такими вещами, как коллбеки. Так же мы расскажем о том, как создавать игры, используя элемент `<canvas>`, появившийся в HTML5. Здесь Javascript пригодится нам для рисования фигур.
В этом разделе вы изучите AJAX, технологию, которая позволяет отправлять данные из браузера в ваше веб-приложение без необходимости перезагружать страницу. AJAX очень часто используется с формами, но помимо них представляет целый мир возможностей для создания приятного UX.
Полноценное веб-приложение нуждается в бэкенде, чтобы соханять свои данные и выполнять необходимые операции. Здесь вы узнаете, как использовать AJAX для отправки данных и запросов к вашему бэкенду на Rails. Так же вы сможете поработать со внешними API, такими как Google Maps, что вы, вероятнее всего, будете делать довольно часто, работая над своими будущими проектами.
Это НЕОБЯЗАТЕЛЬНЫЙ раздел, где вы узнаете об использовании Javascript на вашем сервере (вместо Ruby) и о фреймворках на Javascript, которые позволят вам создать полноценный сайт в виде single-page application, используя Javascript для молниеносно быстрого UX.
Вы изучили все, что вам необходимо, и осталось лишь применить ваши знания в достойной задаче. В этом разделе мы кратко расскажем о том, как тестировать Javascript при помощи Jasmine и затем предложим вам выполнить завершающий проект, в котором вы сможете продемонстрировать все полученные знания.