Это история двух подруг Ады и Грейс. Ада - увлеченный разработчик пользовательского интерфейса. Она увлекается новыми технологиями и всегда старается узнавать что-то новое в экосистеме пользовательского интерфейса. После долгого времени в один прекрасный день Ада встретила свою подругу Грейс, которая работает над другой технологией. После первоначального обсуждения обсуждение перешло к их работе ...
Грейс: Привет, Ада, вы все еще работаете над JavaScript и HTML?
Ада: да. Я работаю с JavaScript.
Grace: используется ли он для разработки веб-приложений?
Ada: он был разработан для Интернета, но на сегодняшний день JavaScript повсеместно присутствует. Он также используется для разработки на стороне сервера (Node JS), погружения в Интернет, то есть AR / VR, программирования дронов, мобильной разработки и многого другого.
Грейс: Хм ...
Ада:… и знаете ли вы, что он имеет открытый исходный код, кроссплатформенный и довольно популярный? На таких платформах, как GitHub и NPM, доступен ряд JS-репозиториев и плагинов, которые вносит очень большое активное сообщество. Прелесть JavaScript в том, что это легкий интерпретируемый язык программирования.
Grace: вы упомянули NPM. Что ты имеешь в виду?
Ada: NPM означает диспетчер пакетов узлов. Это менеджер пакетов по умолчанию для среды выполнения JavaScript Node.js. Думайте об этом как о Maven для Java.
Грейс: Да уж, здорово. Если я хочу изучить JS и мне нужно запустить базовый проект JS, какие шаги мне нужно выполнить?
Ada: для базового приложения или для начала работы с JS вам понадобится только редактор. Популярными редакторами, используемыми JS-программистами, являются Visual Studio Code, Sublime, WebStorm и так далее. Для начала вы можете сослаться на базовые онлайн-уроки в W3C School, Tutorials Point и Pluralsight.
Grace: круто. У меня фундаментальный вопрос о веб-программировании. Все ли браузеры понимают JavaScript?
Ada: Да, все браузеры полностью понимают JS до версии 5. Кстати, я работаю с последней версией JavaScript.
Grace: какая последняя версия JavaScript ??
Ada: последним популярным выпуском был ES6 aka ECMAScript2015, как следует из названия, он был выпущен в 2015 году.
Грейс: интересно! Вы хотите сказать, что после 2015 года нового релиза не было?
Ada: № 2015 был крупным выпуском после долгого времени, который был принят большой частью сообщества. С тех пор было выпущено несколько релизов, каждый из которых содержал действительно приятные функции.
Грейс: Итак ... как вы называете последнюю версию?
Ada: ECMAScript 2018 aka ES9.
Grace: ECMAScript и Javascript - это одно и то же?
Ада: Хм… не совсем. ECMAScript - это спецификация, а JavaScript следует за ней.
Grace: технические характеристики? Что вы имеете в виду под спецификациями?
Ada. Подумайте о спецификациях, таких как план, рекомендации, нормы, которым должен соответствовать язык.
Грейс: Тогда кто определяет эти характеристики?
Ada: существует технический комитет TC39, на который возложена ответственность за развитие JavaScript. Они предлагают эти спецификации.
Грейс: Попался. Вы сказали ранее, что браузеры понимают только до версии 5. Означает ли это, что популярные браузеры, такие как Chrome, Firefox, Safari и Edge, не распознают последние версии, о которых вы только что упомянули?
Ada: на сегодняшний день среди всех браузеров Chrome понимает большинство последних версий, а Firefox занимает второе место. Цель остальных - наверстать упущенное.
Грейс: Тогда почему вы используете его сейчас?
Ada: новые версии обладают действительно классными функциями, такими как 100% обратная совместимость, они быстрые, поддерживают принципы объектно-ориентированного программирования, функциональное программирование и т. д.
Grace: если вы пишете код с использованием последней версии, как вы можете гарантировать, что браузер его поймет?
Ada: мы используем транспилеры, чтобы преодолеть различия. Вы знаете, что компиляторы преобразуют код с языка программирования более высокого уровня в код низкого уровня, такой как ассемблер или машинный язык. Точно так же транспилеры читают исходный код, написанный на одном языке программирования, и создают эквивалентный код на другом языке, который имеет аналогичный уровень абстракции.
Grace: Какой транспилер вы тогда используете?
Ада: мы используем babel. Он переносит или преобразует код, написанный на ES6 или последних версиях, в ES5, версию, которую, как я упоминал ранее, понимают все браузеры. Чтобы связать JS-код с babel, мы используем webpack.
Grace: Webpack, что такое Webpack ???
Ada: Webpack - это сборщик модулей для приложений JavaScript. Он объединяет все файлы артефактов в один выходной файл. Webpack предоставляет загрузчики для различных типов файлов, таких как JSON, CSS, URL и т. Д. Кроме того, он предоставляет загрузчик для babel transpiler, также известного как babel-loader.
Grace: есть ли другие функции?
Ada: нулевая конфигурация, минификация, удаление, встроенный сервер, горячая замена модулей. У него также есть собственный интерфейс командной строки ...
Грейс: Ого! JavaScript действительно очень мощный и крутой, чем я думал. Я определенно хотел бы узнать об этом намного больше. Мне интересно узнать, как он используется для разработки на стороне сервера, а также для разработки мобильных приложений. Когда ты расскажешь мне об этом подробнее?
Ада: Давай скоро встретимся снова, и тогда я буду более чем счастлив рассказать тебе об этом больше. Пока мы не встретимся снова, до свидания и чао!
Сегодня мы рассмотрели основы JavaScript. Продолжайте посещать это пространство, чтобы узнать больше историй, которые помогут вам понять этот обширный, но увлекательный мир JavaScript.