Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LT駆動開発04 5分では分からないTypeScriptのなんとか

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

LT駆動開発04 5分では分からないTypeScriptのなんとか

LT駆動開発 04で発表したLT資料です。
「5分では分からないTypeScriptのなんとか」

Avatar for Kazuya Matsubara

Kazuya Matsubara

June 07, 2014
Tweet

More Decks by Kazuya Matsubara

Other Decks in Programming

Transcript

  1. 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”                  ];          }   }  
  2. TypeScriptとは Ê  静的型付け⾔言語   Ê  カターンゼンッ   Ê  2014年年04⽉月02⽇日にversion  1.0がリリース

      Ê  JavaScriptのスーパーセット   Ê  コンパイルしてJavaScriptを⽣生成   Ê  altJS  
  3. 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/  より  
  4. TypeScriptの何がいいのか Ê  コンパイル時に型の整合性チェックが⾏行行われる   Ê  IDE等で補完機能を使える   Ê  JavaScriptの書き⽅方をしても動く  

    Ê  (この部分は静的型付けは損なわれるが・・・)   Ê  TypeScriptとほぼ⼀一対⼀一で対応するJavaScriptに変換   Ê  ⽣生成されたJavaScriptの可読性がよい  
  5. TypeScriptの開発環境 Ê  Visual  Studio  2013、2012(WIndows)   Ê  WebStorm   Ê 

    Eclipse  +  Eclipse  TypeScript  plug-­‐in   Ê  Sublime  Text  +  T3Sモジュール   Ê  Vim  +  TypeScriptプラグイン   Ê  Emacs  +  TypeScript拡張
  6. 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  =  {}));