Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
TypeScriptをより実践的に使うために
Search
Mayuki Sawatari
June 14, 2014
Programming
4.7k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TypeScriptをより実践的に使うために
Build Insider Offline #2 (
http://www.buildinsider.net/event/offline/02
)
Mayuki Sawatari
June 14, 2014
More Decks by Mayuki Sawatari
See All by Mayuki Sawatari
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
860
.NET 9アプリをCGIとして レンタルサーバーで動かす
mayuki
1
1.3k
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
2
46k
Real World .NET Core on Kubernetes
mayuki
2
3.9k
OneDrive On-Demandがすごい
mayuki
0
2.7k
Android TVとXamarinとKotlin
mayuki
2
570
Cutting Edge!
mayuki
0
3.9k
.NETプログラム(のランタイムを実装する)入門なのです
mayuki
0
2.4k
Acute Low back pain
mayuki
1
310
Other Decks in Programming
See All in Programming
Railsバージョンを4倍にした話
optim
0
470
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
160
Next.js: The final boss of Web Performance
guaca
0
290
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
410
TechTown - Creating Composable Callables in Contemporary C++
rollbear
0
130
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
160
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
1
1.7k
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
800
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
820
AIに “答え“を書かせるのを やめてみた
___akari11
0
120
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
510
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
260
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
WCS-LA-2024
lcolladotor
0
900
BBQ
matthewcrist
90
10k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
600
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
460
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
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