JavaScript — 101.

У каждого свой способ изучения нового материала | концепции. Для одного важно «узнать, как он изучает» эти новые концепции. Со временем я осознал двухэтапный процесс, который часто срабатывает всякий раз, когда я пытаюсь изучить что-то новое;

1. иметь общее представление[или масштаб] того, что вы пытаетесь изучить, &
2. погружаться в мелкие[мелкие детали] по одной за раз.

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

Однако в этом блоге я сосредоточусь на 1-м шаге выше:
обзор[общая картина или масштаб] того, что это такое [Javascript] я пытаюсь учиться. В этом случае область действия подразделяется на 2 разные части;
а) Javascript с самого начала (немного истории языка для контекста).
б) применение JavaScript в настоящее время.

JavaScript от начала:
Имея контекст когда язык был изобретен, почему это было изобретено и кто это на самом деле изобрел – это отличная отправная точка для общей картины.

Корпорация Netscape в 1995 году наняла Брендана Эйха с целью встроить язык программирования Scheme в свой Netscape Navigator (браузер). Сотрудничество Netscape с Sun Microsystems, изменившим правила игры благодаря языку программирования Java, вынудило Netscape создать Java-подобный язык сценариев для Интернета. Scheme, объектная ориентация Self и синтаксис Java». Первоначально этот язык назывался Mocha, а затем был переименован в LiveScript, а затем, наконец, в JavaScript в сентябре 1995 года.
Брендан Эйх создал «Mocha» за 10 дней в мае 1995 года. ) современного Javascript.

JavaScript, язык сценариев на стороне клиента, вывел просмотр веб-страниц на новый уровень в середине 1990-х годов. NetScape разработала среду выполнения javascript, SpiderMonkey, которая была встроена в ее браузер в качестве механизма для «интерпретации» исходного кода javascript в байтовый или машинный код. Различные версии языка были реализованы с улучшениями функций, чтобы сделать просмотр веб-страниц более эффективным и быстрым.

В следующем, 1996 году, конкурент Sun Microsystems, Microsoft, разработал собственную версию Javascript и назвал ее JScript. JScript работал в браузере Microsoft Internet Explorer. Между двумя компаниями нарастал конфликт, поскольку у каждой были разные способы реализации функций, используемых в браузерах. Это привело к необходимости иметь стандарт написания языков сценариев для Интернета. ECMA установил стандарт написания клиентских языков сценариев для Интернета. В конечном итоге это привело к переименованию JavaScript в ECMAScript в качестве официального названия ECMA. ECMAScript было новым названием, и в последующие годы были созданы разные версии.

Ниже приведен краткий обзор версий ECMAScript [Javascript] за последние годы, в каждой из которых были добавлены новые функции. краткие описания взяты из (w3schools)
Год [Имя] Описание
1997 [ECMAScript 1] Первый Редакция.
1998 [ECMAScript 2] Только редакционные изменения.
1999 [ECMAScript 3] Добавлены регулярные выражения. Добавлен try/catch.
2000 [ECMAScript 4] Никогда не выпускался.
2009 [ECMAScript 5] Добавлен «строгий режим». Добавлена ​​поддержка JSON.
2011 [ECMAScript 5.1] Редакционные изменения.
2015 [ECMAScript 6] Добавлены классы и модули.
2016 [ECMAScript 7 ] Добавлен экспоненциальный оператор Array.Prototype.Include

Важно отметить, что Microsoft Internet Explorer доминировал на рынке в 2000-х годах, поэтому JScript долгое время пользовался большей актуальностью в качестве основного клиентского языка сценариев в Интернете. Это почти привело к тому, что JavaScript исчез до конца периода 2008/09. В период [2008–2009 годов] компания Google разрабатывала собственный движок JavaScript (Chrome V8) для своего браузера Chrome. V8 была настолько мощной, что улучшила производительность Javascript в веб-браузере. Когда Google Chrome стал ведущим браузером, JavaScript вернулся на первое место в качестве основного клиентского языка сценариев в Интернете.

К 2008/09 году появилось множество веб-браузеров, и каждый из них имел свой собственный движок javascript, который пытался оптимизировать последние выпущенные функции ECMAScript.
Ниже приведен список браузеров с их механизмами Javascript.
– [Браузер]: [JavaScript Engine]
Chrome: V8.
Opera: Каракан.
Internet Explorer: Чакра (движок JScript).
FireFox: SpiderMonkey.
Safari: Nitro.
- и т.д.

Приложения JavaScript:
движок Chrome V8 кардинально изменил правила игры; поскольку производительность его браузера превзошла эффективность большинства других браузеров. В результате, после долгого периода (почти 9 лет) доминирования Microsoft JScript, Javascript снова завоевал популярность. Большинство браузеров по-прежнему имели движки, которые использовали интерпретаторы, переводившие исходный код в байт-код, которые медленно работали на стороне клиента. Что сделало V8 мощным, так это его способность компилировать исходный код javascript непосредственно в машинный код перед его выполнением. Эта способность привела к гораздо более широкому использованию Javascript не только в качестве языка сценариев на стороне клиента, но и как язык, который можно было бы использовать и в качестве языка сценариев на стороне сервера.

Первоначально Javascript был ограничен работой только в браузерах: движок Chrome V8 позволял компилировать код JavaScript непосредственно в машинный код: таким образом, технически JavaScript можно было запускать и в автономной системе, например на сервере. В мае 2009 года был создан Node.js, который позволяет создавать приложения JavaScript на стороне сервера, используя движок Chrome V8 в качестве среды выполнения. С созданием Node.js Javascript официально стал языком полного стека, который будет использоваться для создания целых веб-приложений как на стороне сервера, так и на стороне клиента. — вместо того, чтобы использовать разные языки для серверных и клиентских скриптов.

Node.js разъяснил удобство использования Javascript, что привело к новым технологиям, расширяющим возможности создания веб-приложений с использованием полностью новых фреймворков JavaScript. Один из таких технологических терминов «MEAN Stack» резюмирует это: он включает Angular.js — новую клиентскую веб-инфраструктуру javascript для создания веб-приложений, Express.js. еще одна веб-инфраструктура для создания API и разработки веб-приложений с использованием Node.js и, наконец, MongoDB, которая использует JSON для своих реализаций баз данных. С такой скоростью JavaScript становится все более доминирующим в качестве жизнеспособного языка с полным стеком.

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

источники:
https://en.wikipedia.org/wiki/JavaScript
https://en.wikipedia.org/wiki/List_of_ECMAScript_engines< br /> - https://en.wikipedia.org/wiki/MEAN_(software_bundle)

В моем следующем блоге; Я попытаюсь углубиться в понимание различных версий JavaScript, включая улучшения, сделанные от: добавления классов и интерфейсов в последних версиях - до планирования добавления асинхронности /wait в будущих версиях (или недавно добавленных, например, в прошлом месяце).