Найти в Дзене

JavaScript vs. TypeScript: В чём разница?

Поищем ответ на вопросы: чем JavaScript отличается от TypeScript, и что из них предпочтительнее для разработки Что такое JavaScript? JavaScript - это язык сценариев, который помогает создавать интерактивные веб-страницы. Он следует правилам программирования на стороне клиента, поэтому он запускается в веб-браузере пользователя без необходимости использования каких-либо ресурсов веб-сервера. Так же вы можете использовать JavaScript с другими технологиями, такими как REST API, XML и прочие. Идея разработки этого сценария состоит в том, что бы сделать его дополнительным языком сценариев, таким как Visual Basic был для C++ в семействе языков Майкрософт. Однако, JavaScript не предназначен для больших и сложных приложений. Он был разработан для приложений с несколькими сотнями строк кода! Что такое TypeScript? TypeScript - это современный язык разработки JavaScript. Это статически компилируемый язык для написания чистого и понятного JavaScript кода. Он может быть запущен на Nodejs или в люб
Оглавление

Поищем ответ на вопросы: чем JavaScript отличается от TypeScript, и что из них предпочтительнее для разработки

Что такое JavaScript?

JavaScript - это язык сценариев, который помогает создавать интерактивные веб-страницы. Он следует правилам программирования на стороне клиента, поэтому он запускается в веб-браузере пользователя без необходимости использования каких-либо ресурсов веб-сервера. Так же вы можете использовать JavaScript с другими технологиями, такими как REST API, XML и прочие.

Идея разработки этого сценария состоит в том, что бы сделать его дополнительным языком сценариев, таким как Visual Basic был для C++ в семействе языков Майкрософт. Однако, JavaScript не предназначен для больших и сложных приложений. Он был разработан для приложений с несколькими сотнями строк кода!

Что такое TypeScript?

TypeScript - это современный язык разработки JavaScript. Это статически компилируемый язык для написания чистого и понятного JavaScript кода. Он может быть запущен на Nodejs или в любом браузере, поддерживающим ECMASCript 3 или новее.

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

Далее мы рассмотрим ключевые различия между TypeScript и JavaScript.

Ключевые различия

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

Почему javaScript?

  • Проект с открытым исходным кодом под патронажем Майкрософт
  • Специально разработанный инструмент для небольших сценариев
  • Поддерживает классы, интерфейсы и модули
  • Скомпилированный JavaScript запускается в любом браузере
  • Разрешает кросс-компиляцию
  • Вы можете расширить JavaScript для написания больших приложений
  • Добавляет поддержку классов, интерфейсов и модулей.

Почему TypeScript?

  • TypeScript поддерживает JavaScript-библиотеки и API-документацию
  • Это надмножество JavaScript
  • Это опционально типизированный язык сценариев
  • TypeScript можно конвертировать в простой JavaScript код
  • Улучшенная структура кода и техники объектно-ориентированного программирования
  • Обеспечивает лучшую поддержку инструмента времени разработки
  • Он может расширить язык за пределы стандартных декораторов async/await

История JavaScript

Программист корпорации Netscape Communication Брендан Эйх (или Айк) (Brendan Eich /ˈaɪk/) создал язык для изначально называвшийся «Mocha» он предназначался для работы Netscape navigator. Однако, став популярным инструментом для создания скриптов был переименован в LiveScript. Позже он был переименован в JavaScript, что бы отобразить поддержку Java в браузере Netscape.

Давайте посмотрим на важные вехи в истории javaScript:

  • Он был запущен в сентябре 1995 и понадобилось всего десять дней для разработки языка сценариев, который первоначально назывался «Mocha»
  • В ноябре 1996 года Netscape представила JavaScript в ECMA (European Computer Manufacturers Association - Европейская Ассоциация Производителей Компьютеров) International
  • ECMAScript 2 был выпущен в 1998 году
  • ECMAScript 3 был выпущен в 1999 году
  • В 2005 году Эйх (Айк) и Mozilla присоединились к ECMA для разработки E4X JavaScript
  • В январе 2009 был запущен проект CommonJS с целью определения общей стандартной библиотеки
  • В июне 2011 года был выпущен ECMAScript 5.1
  • В июне 2015 года был выпущен ECMAScript 2016
  • Текущая версия ECMAScript 2017, была выпущена в июне 2017 года

История TypeScript

Давайте рассмотрим важные вехи в истории TypeScript:

  • Впервые TypeScript был представлен публике в 2012 году
  • После двух лет внутренней разработки в Майкрософт, в 2013 году был выпущен TypeScript 0.9
  • Дополнительная поддержка дженериков появилась в TypeScript 1.0, выпущенном в 2014 году
  • В Июле 2014 года, новый компилятор TypeScript стал работать в пять раз быстрее предыдущих версий
  • В Июле 2015 года появилась поддержка модулей ES6, пространства имён, ключевое слово for ... of support, декораторы
  • В ноябре 2016 была добавлены keyof и типы поиска, сопоставленные типы и остальное
  • 27 марта 2018 года, добавлены условные типы, улучшены поддержка keyof с типами пересечения Typescript

Возможности JavaScript

  • Это кросс-платформенный язык
  • Используется для программирования как на стороне клиента, так и на стороне сервера
  • Лёгок для изучения и старта
  • Динамический язык: гибки и мощный
  • Большая «свобода выбора» делать всё, что вы хотите с любым объектом
  • Надёжный процесс тестирования
  • Добавлены зависимости
  • Нет поддержки фреймворков

Возможности TypeScript

  • Обслуживаемость
  • Предлагает отличную производительность для разработчиков
  • Навигация по коду и предотвращение ошибок
  • «Обнаруживаемость»и рефакторинг
  • Опциональная аннотация статических типов / статическая типизация
  • Дополнительные возможности функций
  • Поддерживает ES6
  • Поддерживает интерфейсы, под-интерфейсы, классы и под-классы
  • Масштабируемая html5 разработка на стороне клиента
  • IDE с богатым функционалом, возможностями автодополнения и навигации по коду
  • Основанный на классах объектно-ориентированный с наследованием приватных свойств и интерфейсов

JavaScript vs. TypeScript: Что лучше?

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

Источник: JavaScript vs. TypeScript: В чём разница?