DevCon 2015
developers productivity platform
#msdevcon
DevCon 2015
developers productivity platform
Станислав Выщепан
Независимый консультант
Разработка веб-
приложений с
помощью TypeScript
Что вам надо знать о TypeScript
Язык программирования
Надмножество JavaScript
Компилируется в чистый JavaScript
По-разному типизированный
Читается ТайпСкрипт, а не ТупоСкрипт
Разработчики о JavaScript
Разработчики правы!
Проблемы JavaScript
1. Динамическая типизация
2. Отсутствие модульности
3. Нелогичное поведение
Динамическая типизация
Отсутствие модульности
• 1.js
• 2.js
Фатальный недостаток
JavaScript придумал не Microsoft!
Чем поможет TypeScript
Статическая типизация
Корректность кода проверяется прямо во время набора текста и при
компиляции
Intellisense во всех средствах разработки
Инструменты для разработчиков
Рефакторинг без поломки кода
Компилируется в хороший JavaScript
Код на JavaScript остается похож на код TypeScript
Почти не добавляет лишнего
Автоматизирует паттерны
DevCon 2015 #MSDevCon
DEMO
Введение в TypeScript
Возможности TypeScript
Структурная типизация и вывод типов
Большую часть аннотаций можно не писать
Интерфейсы, классы, generics, лямбда-функции
Объектно-ориентированное и функциональное программирование
Типы-кортежи и union-types
Почти все многообразие типов JavaScript можно описать статически
Возможности будущих версий стандарта ECMAScript (ES6+)
Встроенная модульность с помощью AMD или CommonJS
А как же библиотеки?
Ахиллесова пята всех компиляторов языка в JavaScript
Но совершенно не проблема для TypeScript
TypeScript позволяет описать типы для существующего JavaScript-кода
Open Source библиотеки описаний типов для популярных JavaScript-библиотек
http://definitelytyped.org/
Angular2 создается на TypeScript!
DevCon 2015 #MSDevCon
DEMO
Приложение для SharePoint на TypeScript с использованием Angular
Но у меня уже есть тонна кода на JS…
Это не проблема
Код на JavaScript – это синтаксически корректный код на TypeScript
Что надо делать:
1. Переименовать .js в .ts
2. Настроить компиляцию в .ts->.js
3. Установить определения для библиотек
4. Написать определения для вашего кода
5. Отрефакторить, чтобы использовать возможности TypeScript
DevCon 2015 #MSDevCon
DEMO
Переводим JavaScript в TypeScript
Преимущества TypeScript
Open Source
Никаких vendor lock
Можно использовать в любых IDE
Компилятор TypeScript написан на TypeScript
Концептуально целостный язык
Можно использовать в своих приложениях
Продуманный roadmap
Фичи будущих стандартов ECMAScript
Возможности современных языков
TypeScript Roadmap
Beta
Он изобрел Delphi
Он изобрел C#
Он изобрел TypeScript
В такой компании у TypeScript
большое будущее 
Чем знаменит
этот человек?
Начинайте прямо сегодня
Полезные ссылки
http://www.typescriptlang.org/
http://definitelytyped.org/
https://github.com/Microsoft/TypeScript
Станислав Выщепан
Независимый консультант, SharePoint MVP
stanislav.v@outlook.com
http://gandjustas.blogspot.ru/
Разработка веб-приложений с помощью TypeScript
©2015 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or
trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this
presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee
the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN
THIS PRESENTATION.

Разработка веб-приложений с помощью TypeScript

  • 1.
  • 2.
  • 3.
  • 4.
    Что вам надознать о TypeScript Язык программирования Надмножество JavaScript Компилируется в чистый JavaScript По-разному типизированный Читается ТайпСкрипт, а не ТупоСкрипт
  • 5.
  • 6.
  • 7.
    Проблемы JavaScript 1. Динамическаятипизация 2. Отсутствие модульности 3. Нелогичное поведение
  • 8.
  • 9.
  • 10.
  • 11.
    Чем поможет TypeScript Статическаятипизация Корректность кода проверяется прямо во время набора текста и при компиляции Intellisense во всех средствах разработки Инструменты для разработчиков Рефакторинг без поломки кода Компилируется в хороший JavaScript Код на JavaScript остается похож на код TypeScript Почти не добавляет лишнего Автоматизирует паттерны
  • 12.
  • 13.
    Возможности TypeScript Структурная типизацияи вывод типов Большую часть аннотаций можно не писать Интерфейсы, классы, generics, лямбда-функции Объектно-ориентированное и функциональное программирование Типы-кортежи и union-types Почти все многообразие типов JavaScript можно описать статически Возможности будущих версий стандарта ECMAScript (ES6+) Встроенная модульность с помощью AMD или CommonJS
  • 14.
    А как жебиблиотеки? Ахиллесова пята всех компиляторов языка в JavaScript Но совершенно не проблема для TypeScript TypeScript позволяет описать типы для существующего JavaScript-кода Open Source библиотеки описаний типов для популярных JavaScript-библиотек http://definitelytyped.org/ Angular2 создается на TypeScript!
  • 15.
    DevCon 2015 #MSDevCon DEMO Приложениедля SharePoint на TypeScript с использованием Angular
  • 16.
    Но у меняуже есть тонна кода на JS… Это не проблема Код на JavaScript – это синтаксически корректный код на TypeScript Что надо делать: 1. Переименовать .js в .ts 2. Настроить компиляцию в .ts->.js 3. Установить определения для библиотек 4. Написать определения для вашего кода 5. Отрефакторить, чтобы использовать возможности TypeScript
  • 17.
  • 18.
    Преимущества TypeScript Open Source Никакихvendor lock Можно использовать в любых IDE Компилятор TypeScript написан на TypeScript Концептуально целостный язык Можно использовать в своих приложениях Продуманный roadmap Фичи будущих стандартов ECMAScript Возможности современных языков
  • 19.
  • 20.
    Он изобрел Delphi Онизобрел C# Он изобрел TypeScript В такой компании у TypeScript большое будущее  Чем знаменит этот человек?
  • 21.
    Начинайте прямо сегодня Полезныессылки http://www.typescriptlang.org/ http://definitelytyped.org/ https://github.com/Microsoft/TypeScript
  • 22.
    Станислав Выщепан Независимый консультант,SharePoint MVP stanislav.v@outlook.com http://gandjustas.blogspot.ru/ Разработка веб-приложений с помощью TypeScript
  • 23.
    ©2015 Microsoft Corporation.All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.