Microsoft Developer Tour msdevtour ru Microsoft Developer Tour

  • Slides: 52
Download presentation
Microsoft Developer Tour Технологическая экспедиция msdevtour. ru

Microsoft Developer Tour Технологическая экспедиция msdevtour. ru

Microsoft Developer Tour Технологическая экспедиция #msdevtour

Microsoft Developer Tour Технологическая экспедиция #msdevtour

Попытки изобрести велосипед Coffee. Script Dart GWT Script# Closure. Script Emscripten и даже qb.

Попытки изобрести велосипед Coffee. Script Dart GWT Script# Closure. Script Emscripten и даже qb. js! https: //github. com/jashkenas/coffeescript/wiki/List-of-languages-that -compile-to-JS

http: //xkcd. com/927/

http: //xkcd. com/927/

И… Type. Script – это проект с открытым исходным кодом. *fork me on github*

И… Type. Script – это проект с открытым исходным кодом. *fork me on github* http: //typescriptlang. org

DEMO Type. Script 101 Microsoft Developer Tour #MSDev. Tour

DEMO Type. Script 101 Microsoft Developer Tour #MSDev. Tour

Инструменты Visual Studio Sublime Text Eclipse Web. Storm Emacs VI …

Инструменты Visual Studio Sublime Text Eclipse Web. Storm Emacs VI …

Библиотеки Definitelly. Typed (200+ typings) DOM j. Query Win. RT Win. JS … Приложения

Библиотеки Definitelly. Typed (200+ typings) DOM j. Query Win. RT Win. JS … Приложения Windows (UAP) Cordova node. js …

DEMO Компилятор Type. Script в браузере Microsoft Developer Tour #MSDev. Tour

DEMO Компилятор Type. Script в браузере Microsoft Developer Tour #MSDev. Tour

Интерфейсы для работы с событиями IEvent. Manager export interface IEvent. Manager extends IEvent. Trigger

Интерфейсы для работы с событиями IEvent. Manager export interface IEvent. Manager extends IEvent. Trigger { add(types: string | string[], callback: (event: IEvent|Object) => void, context? : Object, priority? : number): IEvent. Manager; remove(types: string | string[], callback: (event: IEvent|Object) => void, context? : Object, priority? : number): IEvent. Manager; } fire(type: string, event. Object? : IEvent|Object): IEvent. Manager; …

Интерфейсы для работы с событиями IEvent. Manager export interface IEvent. Manager extends IEvent. Trigger

Интерфейсы для работы с событиями IEvent. Manager export interface IEvent. Manager extends IEvent. Trigger { add(types: string | string[], callback: (event: IEvent|Object) => void, context? : Object, priority? : number): IEvent. Manager; remove(types: string | string[], callback: (event: IEvent|Object) => void, context? : Object, priority? : number): IEvent. Manager; } fire(type: string, event. Object? : IEvent|Object): IEvent. Manager; …

Интерфейсы для работы с событиями IEvent. Manager add(types, callback[, context[, priority]]) remove(types, callback[, context[,

Интерфейсы для работы с событиями IEvent. Manager add(types, callback[, context[, priority]]) remove(types, callback[, context[, priority]]) fire(type[, event]) … IEvent. Emitter IEvent. Manager events IPopup extends IEvent. Emitter, … События: close, open

Интерфейсы для работы с событиями IEvent. Manager add(types, callback[, context[, priority]]) remove(types, callback[, context[,

Интерфейсы для работы с событиями IEvent. Manager add(types, callback[, context[, priority]]) remove(types, callback[, context[, priority]]) fire(type[, event]) … IEvent. Emitter IEvent. Manager events IPopup extends IEvent. Emitter, … События: close, open

Специализация сигнатур interface Document { create. Element(tag. Name: "div"): HTMLDiv. Element; create. Element(tag. Name:

Специализация сигнатур interface Document { create. Element(tag. Name: "div"): HTMLDiv. Element; create. Element(tag. Name: "span"): HTMLSpan. Element; create. Element(tag. Name: "canvas"): HTMLCanvas. Element; create. Element(tag. Name: string): HTMLElement; }

Специализация сигнатур export interface IPopup. Event. Manager extends IEvent. Manager { add(types: “open”, callback:

Специализация сигнатур export interface IPopup. Event. Manager extends IEvent. Manager { add(types: “open”, callback: (event: IEvent|Object) => void, context? : Object, priority? : number): IPopup. Event. Manager ; add(types: “close”, callback: (event: IEvent|Object) => void, context? : Object, priority? : number): IPopup. Event. Manager ; add(types: string[], callback: (event: IEvent|Object) => void, context? : Object, priority? : number): IPopup. Event. Manager ; } …

Обновление наследования… export interface IEvent. Emitter { events: IEvent. Manager; } IPopup extends IEvent.

Обновление наследования… export interface IEvent. Emitter { events: IEvent. Manager; } IPopup extends IEvent. Emitter { … } export interface IPopup. Event. Emitter { events: IPopup. Event. Manager; } IPopup extends IPopup. Event. Emitter { … }

Обобщенные типы export interface IEvent. Emitter { events: IEvent. Manager; } IPopup extends IEvent.

Обобщенные типы export interface IEvent. Emitter { events: IEvent. Manager; } IPopup extends IEvent. Emitter { … } export interface IEvent. Emitter<T> { events: T; } IPopup extends IEvent. Emitter<IPopup. Event. Manager> { … }

Roadmap PREVIEW!

Roadmap PREVIEW!

Type. Script Легко начать Куча инструментов Более безопасный и надежный код http: //typescriptlang. org

Type. Script Легко начать Куча инструментов Более безопасный и надежный код http: //typescriptlang. org https: //github. com/Microsoft/Type. Script

© 2015 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics

© 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.