JS++
Парадигма | Императивный , структурированный , объектно-ориентированный , функциональный , общий. |
---|---|
Разработано | Роджер Пун, Антон Рапетов |
Разработчик | Онуч |
Впервые появился | 8 октября 2011 г |
Дисциплина набора текста | Постепенное , статическое , динамичное. |
Лицензия | Лицензия БСД |
Расширения имен файлов | .jspp, .js++, .jpp |
Веб-сайт | www |
Под влиянием | |
C , C++ , C# , Java , JavaScript |
JS++ — это собственный язык программирования для веб-разработки , который расширяет JavaScript с помощью системы звуковых типов . Он включает в себя императивные , объектно-ориентированные , функциональные и общие функции программирования.
История
[ редактировать ]JS++ впервые появился 8 октября 2011 года. [ 1 ] [ 2 ] [ 3 ] Современная реализация была анонсирована на DeveloperWeek 2016. [ 4 ] и выпущен 31 мая 2016 г. [ 5 ] [ 6 ] [ 7 ] [ 8 ] Язык разработан Роджером Пуном и Антоном Рапетовым.
Синтаксис
[ редактировать ]Введите аннотации
[ редактировать ]Поскольку JS++ — это расширенная версия JavaScript, объявление типов переменных не является обязательным.
int x = 1; // declares the variable x with an "internal type" (JS++ type)
var y = 2; // declares the variable y with an "external type" (JavaScript type)
bool z = true; // declares the variable z with an "internal type" (JS++ type)
Функции
[ редактировать ]JS++ имеет типов систему надежную . [ 9 ] [ 10 ]
JS++ способен эффективно анализировать ошибки, выходящие за пределы допустимого, во время компиляции. [ 11 ] [ 12 ] [ 13 ]
Инструменты разработки
[ редактировать ]Компилятор
[ редактировать ]Компилятор JS++ доступен для Windows , Mac OS X и Linux . Компилятор генерирует выходные данные JavaScript .
Интеграция редактора
[ редактировать ]JS++ интегрируется с различными редакторами кода, включая Visual Studio Code , Atom и Sublime Text . [ 14 ] [ 15 ] [ 16 ]
Инструменты сборки
[ редактировать ]JS++ можно интегрировать со сторонними инструментами сборки, такими как Webpack . [ 17 ]
История выпусков
[ редактировать ]Номер версии | Дата выпуска | Изменения |
---|---|---|
0.01 | 8 октября 2011 г. | Альфа-версия, первоначальный выпуск |
0.011 | 10 октября 2011 г. | Альфа-версия |
0.012 | 25 октября 2011 г. | Альфа-версия |
0.013 | 29 января 2012 г. | Альфа-версия |
0.014.1 | 15 августа 2012 г. | Альфа-версия |
0.4.1 | 31 мая 2016 г. | Бета-версия, типы массивов и обратных вызовов, символьные литералы, целочисленные суффиксы, удален ECMAScript ASI. |
0.4.2 | 18 октября 2016 г. | Модули, перегрузка функций, устранение мертвого кода, интеграция редактора |
0.4.2.1 | 24 октября 2016 г. | Исправления ошибок |
0.4.2.2 | 17 ноября 2016 г. | Отладка исходной карты |
0.4.2.4 | 25 декабря 2016 г. | Поддержка Mac OS X, приведения типов в стиле C, обратных вызовов и преобразований массивов. |
0.5.0 | 13 марта 2017 г. | Классы |
0.5.1 | 26 марта 2017 г. | циклы foreach |
0.5.2 | 27 июля 2017 г. | Лицензия BSD , интерфейсы, абстрактные классы, виртуальные методы, автобокс |
0.7.0 | 27 октября 2017 г. | Все функции ECMAScript 3 через Array<T> и стандартную библиотеку. |
0.8.0 | 15 марта 2018 г. | Общее программирование, словарь<T>, многострочные строки, расширение файла .js++. |
0.8.1 | 27 марта 2018 г. | auto, всеобъемлющие предложения, стандартные библиотечные модули для обработки времени, исправления ошибок |
0.8.4 | 23 мая 2018 г. | Новые строковые функции, расширенные дженерики, исправления ошибок, расширение стандартной библиотеки. |
0.8.5 | 2 июня 2018 г. | Исправления ошибок |
0.8.10 | 24 ноября 2018 г. | Ускоренная компиляция, стеки, очереди, Unicode , Base64 , общие правила ограничений по умолчанию. |
0.9.0 | 11 января 2019 г. | Эффективный анализ ошибок за пределами границ во время компиляции |
0.9.1 | 1 июля 2019 г. | Исправления ошибок |
0.9.2 | 18 октября 2019 г. | Конечные (неизменяемые) переменные и 64-разрядная версия по умолчанию для macOS Catalina. |
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «JavaScript++: новый мощный язык для лучшей веб-разработки» . 17 октября 2011 г. Архивировано из оригинала 17 октября 2011 г.
- ^ «C++ и Javascript = Javascript++» . 12 октября 2011 г. Архивировано из оригинала 12 октября 2011 г.
- ^ «Индекс/загрузок» . 18 октября 2011 г. Архивировано из оригинала 18 октября 2011 г.
- ^ «Конференция Javascript — DeveloperWeek 2016 — 12–18 февраля» . 13 февраля 2016 г. Архивировано из оригинала 13 февраля 2016 г.
- ^ «JS++ переходит в публичную бета-версию» . 31 мая 2016 г.
- ^ Алекс Хэнди (1 июня 2016 г.). «Onux стремится исправить отсутствие типовой безопасности в JavaScript» . СД Таймс .
- ^ Пол Крилл (6 июня 2016 г.). «Новый компилятор решает проблему слабой типизации JavaScript» . Инфомир .
- ^ Каталин Чимпану (9 июня 2016 г.). «Выпуск jQuery 3.0 и другие новости JavaScript» . Софтпедия .
- ^ «Система типов JS++» . www.onux.com .
- ^ Адриан Бриджуотер (13 июня 2016 г.). «Onux JS++ — ответ на «хрупкую» безопасность типов JavaScript?» . Компьютерный еженедельник .
- ^ Фабио Диас (23 января 2019 г.). «JS++, расширенная версия JavaScript, избавляет от ошибок, выходящих за пределы» . Акуаромир.
- ^ Кристина Кардоса (16 января 2019 г.). «Язык программирования JS++ предназначен для устранения ошибок, выходящих за пределы» . СД Таймс .
- ^ «JS++ 0.9.0: эффективный анализ ошибок выхода за границы во время компиляции» . 11 января 2019 г.
- ^ «Расширенный набор JavaScript JS++ добавляет устранение мертвого кода и многое другое» . Компьютерный мир . 19 октября 2016 г.
- ^ Кристина Кардоса (19 октября 2016 г.). «Выпущен JS++ 0.4.2 с интеграцией редактора кода, модулями и устранением мертвого кода» . СД Таймс .
- ^ Женева Кларк (20 октября 2016 г.). «Выпуск JS++ 0.4.2 — обновленный благодаря модульному дизайну, устранению мертвого кода и нескольким редакторам кода» . Зеомаг.
- ^ «GitHub — IngwiePhoenix/jspp-webpack-poc» . 7 декабря 2018 г. – через GitHub.