TypeScript
- Медіафайли у Вікісховищі
TypeScript — мова програмування, представлена Microsoft восени 2012; позиціонується як засіб розробки вебзастосунків, що розширює можливості JavaScript[3][4][5][6][6][7][8].
Розробником мови TypeScript є Андерс Гейлсберг (англ. Anders Hejlsberg), який створив раніше C#, Turbo Pascal і Delphi.
Код експериментального компілятора, котрий транслює код TypeScript у представлення JavaScript, поширюється під ліцензією Apache, розробка ведеться в публічному репозиторії через сервіс CodePlex. Специфікації мови відкриті і опубліковані в межах угоди Open Web Foundation Specification Agreement (OWFa 1.0)[9].
TypeScript є зворотньо сумісним із JavaScript. Фактично, після компіляції програму на TypeScript можна виконувати в будь-якому сучасному браузері або використовувати спільно із серверною платформою Node.js.
Нововведення
Переваги над JavaScript:
- можливість явного визначення типів (статична типізація),
- підтримка використання повноцінних класів (як у традиційних об'єктно-орієнтованих мовах),
- підтримка підключення модулів.
За задумом ці нововведення мають підвищити швидкість розробки, прочитність, рефакторинг і повторне використання коду, здійснювати пошук помилок на етапі розробки та компіляції, а також швидкодію програм.[джерело?]
Планується, що в силу повної зворотної сумісності адаптація наявних застосунків на нову мову програмування може відбуватися поетапно, через поступове визначення типів. Підтримка динамічної типізації зберігається — компілятор TypeScript успішно обробить і не модифікований код на JavaScript.
Основний принцип мови — будь-який код на JavaScript сумісний з TypeScript, тобто в програмах на TypeScript можна використовувати стандартні JavaScript-бібліотеки і раніше створені напрацювання. Ба більше, можна залишити наявні JavaScript-проєкти в незмінному вигляді, а дані про типізації розмістити у вигляді анотацій, які можна помістити в окремі файли, які не заважатимуть розробці і прямому використанню проєкту (наприклад, подібний підхід зручний при розробці JavaScript-бібліотек).
На момент релізу представлені файли для сприйняття розширеного синтаксису TypeScript для Vim і Emacs, а також плагін для Microsoft Visual Studio.
Одночасно з виходом специфікації розробники підготували файли з деклараціями статичних типів для деяких популярних JavaScript-бібліотек, серед яких jQuery.
Особливості мови
Визначення типів
Приклад статичної типізації TypeScript під час визначення функції:
function add(left: number, right: number): number { return left + right; }
Примітивні типи, що можуть використовуватися при анотації — це number
, boolean
і string
(числовий, булевий і рядковий, відповідно).
Виноски
- ↑ Release . Microsoft/TypeScript. TypeScript.
- ↑ The typescript Open Source Project on Open Hub: Languages Page — 2006.d:Track:Q124688
- ↑ Microsoft takes the wraps off TypeScript, a superset of JavaScript
- ↑ TypeScript: JavaScript Development at Application Scale
- ↑ Microsoft TypeScript: Can the father of C# save us from the tyranny of JavaScript?
- ↑ а б Microsoft Augments Javascript for Large-scale Development. Архів оригіналу за 17 грудня 2013. Процитовано 7 жовтня 2012.
- ↑ Microsoft анонсировала новый язык веб-программирования TypeScript. Архів оригіналу за 31 травня 2017. Процитовано 7 жовтня 2012.
- ↑ opennet.ru: Компания Microsoft представила TypeScript, новую открытую альтернативу JavaScript
- ↑ Open Web Foundation Final Specification Agreement (OWFa 1.0). Архів оригіналу за 10 жовтня 2020. Процитовано 7 жовтня 2012.
Посилання
- typescriptlang.org [Архівовано 10 березня 2018 у Wayback Machine.]
- TypeScript [Архівовано 9 жовтня 2012 у Wayback Machine.] project at Codeplex
- TypeScript Language Specification[недоступне посилання з червня 2019]
Це незавершена стаття про мови програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |
- п
- о
- р
- CoffeeScript
- Emscripten
- Google Closure Compiler
- Google Web Toolkit
- Morfik
- TypeScript
- AtScript
- Opa
- Haxe
- Clojure
- Firebug
- Komodo IDE
- Microsoft Script Debugger
- Microsoft Script Editor
- Opera Dragonfly
- Venkman
- Visual Studio
- Visual Studio Express
- Visual Studio Code
- Вебінспектор
- Ace
- Atom
- Cloud9
- CodeMirror
- Codenvy
- Koding
- Orion
- Visual Studio
- Visual Studio Express
- Visual Studio Code
- Дуглас Крокфорд
- Брендан Айк
- Джон Резіг
- Раян Дал