В 2020 году JavaScript исполняется 25 лет, и у него более 10 миллионов пользователей. Сегодня он вездесущ и является одним из наиболее часто используемых инструментов для веб-разработки семь лет подряд, согласно отчетам Ежегодного обзора Stack Overflow. JavaScript родился в 1995 году, задуман и разработан за 10 дней Бренданом Эйхом, инженером-программистом Netscape Communications Corporation.

Релиз программного обеспечения вступил в рыночное столкновение с войной, ведущейся между Netscape и Microsoft, прокатившись на американских горках по быстрому привлечению пользователей, а затем по спирали скатился к выходу с рынка. Тем не менее, из пепла возникла одна из самых необычных историй, которая подняла голоса общественности в защиту Интернета. С этой новой точки зрения JavaScript возродился.

Десять дней от концепции до запуска (1995)

JavaScript появился как поспешное задание, порученное руководством Netscape, потому что компания была вовлечена в ожесточенную войну браузеров с Microsoft. Время имело решающее значение. Microsoft пригрозила уничтожить Netscape, если она не согласится разделить рынок веб-браузеров на основе выпуска операционной системы Microsoft Windows, согласно показаниям Netscape в ходе антимонопольного судебного разбирательства в 1998 году. Microsoft хотела эксклюзивного доступа во Всемирной паутине для своего Internet Explorer, сопровождающего Windows 95. Возмущенная Netscape решила дать отпор, включив сопутствующее программное обеспечение в выпуск браузера Netscape Navigator 2.0 Beta. Этот запланированный код сценария, в конечном итоге названный JavaScript, позволит непрограммистам создать веб-сайт.

Рабочее задание Брендана Эйха содержало атрибуты невыполнимой миссии. Разработка должна была быть готова через десять дней для включения в выпуск браузера Netscape в сентябре 1995 года. Работа должна была соответствовать недавно подписанному широкому соглашению об обмене технологиями и распространении продуктов, подписанном между Netscape и Sun Microsystems. Кроме того, требования руководства подчеркивали важность его внешнего вида. Язык должен был напоминать язык Java Sun Microsystems, чтобы питаться популярностью Java, но он не мог быть Java, чтобы соблюдать законы об авторском праве. Он должен казаться богатым и функционально мощным для быстрого принятия на рынке, но не должен восприниматься как конкурент Java. Эйху было запрещено использовать объектно-ориентированный синтаксис Java. Во время разработки он получил кодовое название Mocha, чтобы продвигаться как дополнение к Java, легкому и удобному языку для непрограммистов.

Эйх справился. Он написал язык сценариев, используя свои знания о функциональности Scheme, добавил ингредиенты, вдохновленные прототипами Self, и создал свою собственную семантику, подобную Java.

Название «Mocha» просуществовало только в течение короткого периода разработки, превратившись в «LiveScript» в его первом выпуске. Эта ранняя версия кода не поддерживала исключения. Операции часто помечали ошибки, но его непрактичность не отпугивала пользователей. Сообщество разработчиков выступило вперед, чтобы помочь отладить программное обеспечение. Sun Microsystems еще раз изменила название продукта на JavaScript, когда в декабре 1995 года выпустила Navigator 2.0 Beta 3, а LiveWire стал торговой маркой серверного JavaScript для Netscape Enterprise Server.

Война браузеров (1995–2003 гг.)

До выпуска браузера Netscape Navigator в 1994 году Microsoft была сосредоточена на вытеснении AOL с помощью Microsoft Network, ActiveX и VBScript и разработала новую версию Microsoft SQL Server, предназначенную для интернет-приложений в 1995 году. После выпуска Internet Explorer в Windows 95 он Microsoft не потребовалось много времени, чтобы догнать Netscape, выпустив в 1996 году переработанный Jscript.

Netscape попросила Европейскую ассоциацию производителей компьютеров, или ECMA, установить общие стандарты. Технический комитет, известный как TC39, взял на себя эту миссию в 1996 году. Напряженные дебаты между конкурирующими реализациями разгорелись во время сессий TC39. Несмотря на незначительный прогресс в достижении соглашения, организация по стандартизации выпустила свой первый набор спецификаций, ECMA-262 в июне 1997 года, который продвигал обратную совместимость как золотое правило и ужесточил определение операторов равенства. Международная организация по стандартизации (ISO) и Международная электротехническая комиссия (IEC) формализовали второе издание ISO/IEC 16262 в июне 1998 г., а третье издание вышло в декабре 1999 г. с версией, представляющей современный JavaScript, именуемой ECMAScript 3. .

Microsoft вытеснила Netscape Navigator с рынка с помощью тактики комплектования и сделала выпущенный в 1997 году Internet Explorer 4, «Интернет таким, каким вы его хотите», де-факто веб-браузером во всех операционных системах Windows, классической Mac OS, HP -Система UX и платформы Solaris. В конце 1998 года AOL приобрела Netscape Communications Corporation за 4,3 миллиарда долларов. Но к 2000 году Microsoft полностью контролировала рынок веб-браузеров.

Microsoft, занимавшая монопольное положение, больше не заботилась о стандартизации, и TC39 был распущен, а работа над ECMAScript 4 была отправлена ​​в хранилище. В конце концов, в 2003 году AOL уволила сотрудников Netscape Navigator. И в конечном итоге она продала Microsoft 800 патентов, включая патенты на браузер Netscape в 2011 году, за 1,1 миллиарда долларов наличными.

Кредит изображения: Википедия

Возрождение (2003–2005)

Из пепла Netscape в 2003 году возник Mozilla Foundation. Миссия этой некоммерческой организации заключалась в том, чтобы защитить доступ к Интернету и сделать его общедоступным ресурсом в глобальном масштабе. В 2005 году Брендан Эйх присоединился к Mozilla Foundation и его усилиям по успешному отстаиванию восстановления TC39 с учетом быстрого роста Firefox. Эйх и Mozilla работали с ECMA над новой итерацией стандартов ECMA-357, также называемых ECMAScript для XML или E4X. Джесси Джеймс Гарретт подпитывал победу в адвокации публикацией 2005 года, описывающей технологии, поддерживаемые JavaScript.

Придумывая термин AJAX для асинхронного JavaScript и XML, он описал набор методов для разработчиков, позволяющих асинхронно обновлять веб-контент, помогать управлять динамическим контентом веб-сайта и указывать функцию отображения веб-страницы независимо от платформы, на которой она просматривается. Наконец, в 2005 году была запущена jQuery, библиотека функций JavaScript, которая может быть вызвана всего одной строкой кода, и был создан Dojo Foundation для продвижения веб-проектов с открытым исходным кодом, включая инструментарий JavaScript для ускорения разработки кросс-платформенных приложений. ECMAScript 5 был выпущен только в 2009 году, после чего в 2011 году были выпущены некоторые обновления для приведения его в соответствие с ISO/IEC 16262.

Изображение предоставлено: Ежегодный обзор Stack Overflow 2019

Становление вездесущим (2006–2020)

Возрождение JavaScript породило экосистему фреймворков и библиотек, упрощающих кодирование JavaScript для клиентских и серверных разработок. В 2006 году jQuery упростил создание более сложных веб-сайтов. Node.js появился в 2009 году как клиентская технология разработки для написания масштабируемых интернет-приложений на JavaScript. Годом позже Backbone представила концепцию одностраничных приложений, а AngularJS еще больше повысил популярность JavaScript благодаря интерфейсным архитектурам, доступным для разработчиков. Knockout.js вышел на рынок с библиотекой JavaScript для динамических пользовательских интерфейсов в 2013 году.

За последние пять лет список технологий, связанных с JavaScript, расширился по количеству и масштабу. Разработчики могут предпочесть одни фреймворки или библиотеки другим в зависимости от целевых приложений. Что остается стабильным, так это приверженность мирового сообщества открытому и коллективному изучению и совершенствованию инструментов, связанных с JavaScript. Он распространен повсеместно и соответствует стандартам ECMA-262 ECMAScript®2019 Language Specification.

Вывод

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

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

Первоначально опубликовано на https://www.techaheadcorp.com.