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
1.1k
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
910
すごい合同勉強会2014 in 広島 懇親会LT
torokun
0
470
LT駆動開発08 - 無限のディスク領域を手に入れよう(妄想編)
torokun
0
110
やめよう「なるはや」
torokun
1
190
DevLOVE広島 第1回 その改善いつするの?
torokun
0
840
LT駆動開発 03 写真を趣味にしてから学んだこと
torokun
0
700
LT駆動開発 02 一発ネタ
torokun
0
1.1k
LT駆動開発 01 gulp入門にもならない何か
torokun
2
550
Other Decks in Programming
See All in Programming
ロボットのための工場に灯りは要らない
watany
10
2.9k
How to stabilize UI tests using XCTest
akkeylab
0
130
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
140
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.2k
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
110
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
950
[SF Ruby Feb'26] The Silicon Heel
palkan
0
110
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
490
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
2
590
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
550
CDIの誤解しがちな仕様とその対処TIPS
futokiyo
0
220
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.9k
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.4k
Statistics for Hackers
jakevdp
799
230k
What does AI have to do with Human Rights?
axbom
PRO
1
2k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.4k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
410
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
Design in an AI World
tapps
0
170
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
71
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
470
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
A Tale of Four Properties
chriscoyier
163
24k
Discover your Explorer Soul
emna__ayadi
2
1.1k
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)
⽂文字列列を設定すると怒怒られる けどコンパイルしてくれる なんてツンデレさんなんでしょう
終