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
LT駆動開発04 5分では分からないTypeScriptのなんとか
Search
Kazuya Matsubara
June 07, 2014
Programming
0
980
LT駆動開発04 5分では分からないTypeScriptのなんとか
LT駆動開発 04で発表したLT資料です。
「5分では分からないTypeScriptのなんとか」
Kazuya Matsubara
June 07, 2014
Tweet
Share
More Decks by Kazuya Matsubara
See All by Kazuya Matsubara
LT駆動開発09 - Creative Commonsについてゆる〜く調べてみた
torokun
1
730
すごい合同勉強会2014 in 広島 懇親会LT
torokun
0
440
LT駆動開発08 - 無限のディスク領域を手に入れよう(妄想編)
torokun
0
95
やめよう「なるはや」
torokun
1
170
DevLOVE広島 第1回 その改善いつするの?
torokun
0
790
LT駆動開発 03 写真を趣味にしてから学んだこと
torokun
0
640
LT駆動開発 02 一発ネタ
torokun
0
990
LT駆動開発 01 gulp入門にもならない何か
torokun
2
500
Other Decks in Programming
See All in Programming
距離関数を極める! / SESSIONS 2024
gam0022
0
320
React への依存を最小にするフロントエンド設計
takonda
20
7.2k
イマのCSSでできる インタラクション最前線 + CSS最新情報
clockmaker
5
3.4k
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
160
Djangoの開発環境で工夫したこと - pre-commit / DevContainer
hiroki_yod
1
410
Ethereum_.pdf
nekomatu
0
480
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
3
290
Functional Event Sourcing using Sekiban
tomohisa
0
110
最新TCAキャッチアップ
0si43
0
230
Micro Frontends Unmasked Opportunities, Challenges, Alternatives
manfredsteyer
PRO
0
140
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
1k
Amazon Qを使ってIaCを触ろう!
maruto
0
430
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
What's in a price? How to price your products and services
michaelherold
243
12k
Statistics for Hackers
jakevdp
796
220k
Writing Fast Ruby
sferik
627
61k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
The Invisible Side of Design
smashingmag
298
50k
Facilitating Awesome Meetings
lara
50
6.1k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Adopting Sorbet at Scale
ufuk
73
9.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Fireside Chat
paigeccino
34
3k
Transcript
5分では分からない TypeScriptのなんとか 2014/06/07 LT駆動開発04 @Toro_kun
module SelfIntroduction { export class Me extends
Person { private name: string = ”松原和也”; private twitterId: string = ”@Toro_kun”; private community:string[] = [ ”⽇日本Androidの会中国⽀支部@staff”, ”GDG中国@staff”, ”JSers' Cafe ZERO@owner” ]; } }
TypeScriptとは Ê 静的型付け⾔言語 Ê カターンゼンッ Ê 2014年年04⽉月02⽇日にversion 1.0がリリース
Ê JavaScriptのスーパーセット Ê コンパイルしてJavaScriptを⽣生成 Ê altJS
altJS ⾔言語 設計/開発 登場時期 影響を受けた⾔言語 CoffeeScript Jeremy Ashkenas, et
al. 2009 JavaScript, Python, Ruby, Haskell TypeScript Microsoft 2012 JavaScript, Java, C# Haxe Haxe Foundation, Nicolas Cannasse 2005 ActionScript, OCaml Dart Google 2011 Java, C++, JavaScript, CoffeeScript, Go JSX DeNA 2012 JavaScript, ActionScript モダンな⾔言語でHTML5を開発しよう! 俯瞰して理理解するaltJSの⽐比較 (前篇 – TypeScript, CoffeeScript, Haxe) http://html5experts.jp/clockmaker/2183/ より
TypeScriptの何がいいのか Ê コンパイル時に型の整合性チェックが⾏行行われる Ê IDE等で補完機能を使える Ê JavaScriptの書き⽅方をしても動く
Ê (この部分は静的型付けは損なわれるが・・・) Ê TypeScriptとほぼ⼀一対⼀一で対応するJavaScriptに変換 Ê ⽣生成されたJavaScriptの可読性がよい
TypeScriptの開発環境 Ê Visual Studio 2013、2012(WIndows) Ê WebStorm Ê
Eclipse + Eclipse TypeScript plug-‐in Ê Sublime Text + T3Sモジュール Ê Vim + TypeScriptプラグイン Ê Emacs + TypeScript拡張
つかってみました
enum TypeScript enum sample { a = 1,
b, c = 4, daa } JavaScript sample; (function (sample) { sample[sample["a"] = 1] = "a"; sample[sample["b"] = 2] = "b"; sample[sample["c"] = 4] = "c"; sample[sample["daa"] = 5] = "daa"; })(sample || (sample = {}));
enum (TypeScript)
enum (JavaScript)
⽂文字列列を設定すると怒怒られる けどコンパイルしてくれる なんてツンデレさんなんでしょう
終