Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TypeScriptをより実践的に使うために
Search
Mayuki Sawatari
June 14, 2014
Programming
6
4.5k
TypeScriptをより実践的に使うために
Build Insider Offline #2 (
http://www.buildinsider.net/event/offline/02
)
Mayuki Sawatari
June 14, 2014
Tweet
Share
More Decks by Mayuki Sawatari
See All by Mayuki Sawatari
.NET 9アプリをCGIとして レンタルサーバーで動かす
mayuki
1
1k
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
2
26k
Real World .NET Core on Kubernetes
mayuki
2
3.7k
OneDrive On-Demandがすごい
mayuki
0
2.5k
Android TVとXamarinとKotlin
mayuki
2
500
Cutting Edge!
mayuki
0
3.6k
.NETプログラム(のランタイムを実装する)入門なのです
mayuki
0
2.3k
Acute Low back pain
mayuki
1
250
まるごと Internet Explorer 11 + Windows Phone 8.1
mayuki
0
270
Other Decks in Programming
See All in Programming
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
560
ALL CODE BASE ARE BELONG TO STUDY
uzulla
1
170
Advance Your Career with Open Source
ivargrimstad
0
490
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1.3k
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
240
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
210
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
1k
dynamic!
moro
10
7.4k
CSC305 Lecture 04
javiergs
PRO
0
270
CSC509 Lecture 06
javiergs
PRO
0
260
私はどうやって技術力を上げたのか
yusukebe
43
18k
止められない医療アプリ、そっと Swift 6 へ
medley
1
160
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Faster Mobile Websites
deanohume
310
31k
How GitHub (no longer) Works
holman
315
140k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.9k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Raft: Consensus for Rubyists
vanstee
139
7.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Cost Of JavaScript in 2023
addyosmani
54
9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Into the Great Unknown - MozCon
thekraken
40
2.1k
How to Ace a Technical Interview
jacobian
280
24k
GraphQLとの向き合い方2022年版
quramy
49
14k
Transcript
None
( )
None
TypeScript TypeScript TypeScript TypeScript ? ? TypeScript TypeScript
None
TypeScript Ver.1.0
JavaScript
None
( )
None
None
Module( ) Class/Interface Arrow Function
IDE ( )
None
IDE DOM
JavaScript HTML
JavaScript Visual Studio IDE JavaScript
IDE
None
Node.js WebStorm Visual Studio Playground Visual Studio Online
None
% npm install -g typescript % tsc nantoka.ts
None
JetBrains Web HTML CSS JavaScript TypeScript TypeScript/JavaScript TypeScript Node.js
None
Microsoft 2013 Update 2 (Visual Studio Express) TypeScript
None
Visual Studio TypeScript
None
JetBrains Visual Studio ( )
None
None
None
None
Microsoft Azure Web Sites Node.js+TypeScript
None
None
Web WebStorm+Node.js Windows Visual Studio Playground Visual Studio Online
None
(.d.ts) DefinitelyTyped Visual Studio DefinitelyTyped Node.js DefinitelyTyped (.d.ts)
JavaScript
GitHub (.d.ts) https://github.com/borisyankov/DefinitelyTyped
None
None
tsd % npm install -g tsd % tsd query knockout
None
JavaScript TypeScript TypeScript
TypeScript declare
declare var hoge: number; // JavaScript hoge declare class Hoge
{ foo(): void; }
// Rabbit function Rabbit(name) { this.name = name; } //
jump Rabbit.prototype.jump = function () { alert(this.name + ' '); } // Rabbit Tippy var Tippy = new Rabbit(' ');
any declare var Tippy: any;
declare var Tippy: any; declare class Rabbit { constructor(name: string);
// name: string; // jump(): void; // }
any declare var Tippy: Rabbit; declare class Rabbit { constructor(name:
string); // name: string; // jump(): void; // }
JS ? var HotCocoa = { name: ' ', price:
400 }; var KilimanjaroCoffee = { name: ' ', price: 600 };
new interface interface IDrinkStatic { name: string; price: number; }
declare var HotCocoa: IDrinkStatic; declare var KilimanjaroCoffee: IDrinkStatic;
None
any any
None
None
TypeScript TypeScript JavaScript tsc
None
TypeScript
None