SlideShare a Scribd company logo
TypeScriptで作る
型安全FirefoxOSアプリ
2013/7/19 関東Firefox OS勉強会 2nd
ぷろぐれ
アジェンダ
• 自己紹介
• なぜTypeScriptなのか
• 実際のコードとデモ
CreateJSも使って
ゲーム?を作ってみまし
た
自己紹介
• ぷろぐれ @progremaster
• HP: http://www.prgrssv.net
• 新卒3年目
• C#とかJavaとかが好き モバイルはほとんどやってない
• PeerCastというストリーミング配信ソフトで
ライブコーディング配信を5年くらいやっています。
http://dp.prgrssv.net ライブコーディングをやっていただける
プロい方を探しています
なぜTypeScriptなのか
@dynamitter http://www.slideshare.net/dynamis/firefox-os-app-
dev
FirefoxOSのアプリ
JavaScriptです。
JavaScriptです。
JavaScriptです。
大事なこと3回
JavaScript
他のモバイルアプリの言語と違う
使いにくい
• 型がない
• クラスがない
• 即時関数
• その他落とし穴多数
エンバグしやす
い
柔軟すぎる
Javaと
か
Objective-Cとか C#とか
JavaScript
JavaScript 怖い
↓
Webアプリ怖い
↓
FirefoxOSアプリ怖い
何とかできないか?
• CoffeeScript
• Haxe
• JSX
• Dart
altJS
altJS = コンパイルしてJavaScriptになる言語
型が無い…
型はあるけど
別言語…
• TypeScript
なぜTypeScriptなのか
• APIが完全互換・構文が上位互換(一部ES6互換)
• JavaScriptのノウハウが活きる
• 型付き
• エラーチェックで品質を底上げできる
• インテリセンス(入力補完)
class Xxxx
{
...
}
() => { ... }
Visual Studio
WebStorm
他
互換性 型
付
き
API 構文
CoffeeScript ○ × ×
Haxe × △ ○
JSX △ △ ○
Dart × × ○
TypeScript ○ ○ ○
なぜTypeScriptなのか
なぜTypeScriptなのか
• その他
• アンダース・ヘルスバーグ氏率いるMicrosoftが開発
• 出力JavaScriptが美しい
• 良いJavaScriptコードのお手本レベル
• Node・RequireJSのモジュールを出力可能
• ゆるいinterface
Delphi C#の父
実際のコードとデモ
TypeScript/CreateJS+RequireJS
パッケージ型アプリ
プロジェクト
ディレクトリ
FirefoxOSアプリ
TypeScript
型定義
(C言語の
ヘッダーに相当)
ビルド設定
テスト用Webサーバー
(割愛)
https://github.com
/progre/hiyokorun
TypeScript JavaScript
デモ
https://marketplace.firefox.com/app/chickens-race/
所感
• 型があると安心
• VisualStudioのバグ
• メモリリーク・型情報の引き当て
• Webアプリそのまんま過ぎ
• この勉強会何の勉強会だっけ?
V1.0に期待!
まとめ
TypeScript = 型があってクラスがあって怖くないJavaScript
↓
Webアプリ怖くない!
↓
FirefoxOSアプリ怖くない!
参考資料
• altJS - Web coding without JavaScript.
• http://altjs.org
• Top Languages · GitHub
• https://github.com/languages/
• ES Wiki
• http://wiki.ecmascript.org/doku.php
• TypeScript
• http://www.typescriptlang.org/
参考資料
• JavaScriptを書くならTypeScriptを使え! - 部屋とボー
ドゲームと私と酒と泪と男と女
• https://sites.google.com/site/jun1sboardgames/programming/typescript
• TypeScriptクイックガイド
• http://phyzkit.net/typescript/index.html
• AngularJS+TypeScript
• http://www.slideshare.net/vvakame/angularjs-1year?from_search=11
ご清聴ありがとうございました

More Related Content

PDF
TypeScript 独習会
PPTX
エンジニアが Webを学ぶために やっててよかったこと
PDF
TypeScript 入門してみる
PPTX
C#_GO ABC spring 2017
PDF
TypeScript 型定義ファイルのある開発 TypeScript勉強会 VSハッカソン倶楽部
PPTX
5月13日 JapanAndroidGroup - Hamamatsu c# go
PDF
TypeScriptは明日から使うべき
PDF
第16回勉強会のビギナー資料
TypeScript 独習会
エンジニアが Webを学ぶために やっててよかったこと
TypeScript 入門してみる
C#_GO ABC spring 2017
TypeScript 型定義ファイルのある開発 TypeScript勉強会 VSハッカソン倶楽部
5月13日 JapanAndroidGroup - Hamamatsu c# go
TypeScriptは明日から使うべき
第16回勉強会のビギナー資料

What's hot (20)

PDF
Firefox OS勉強会 2nd TypeScript+AngularJS
PPTX
Bait and switch
PDF
PDF
簡単!Groovy入門
PPTX
超効率的フロントエンドデバッグ術
PPTX
私が ASP.NET を選ぶ理由
PDF
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7
PPTX
僕がLasta flute選んだ理由
PDF
「プログラミングGroovy」入門(公開用)
PPTX
Rails5クイックスタート
PDF
プログラマになれないあなたのための言語戦略 (Gunma.web #7 2011/12/17)
PDF
Rubyを使ったスマホアプリのUIテスト
PPTX
Electronからはじめるnodejs
PDF
JavaScriptと関数型言語
PDF
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
PPTX
TypeScript 1.0 Released!
PPTX
Rails+Markdownでなにかつくる
PDF
「Microbit」で簡単プログラミング体験
PPTX
TypeScriptの大規模開発への適用
PPTX
CodeIgniter3マニュアル和訳の方法と感想
Firefox OS勉強会 2nd TypeScript+AngularJS
Bait and switch
簡単!Groovy入門
超効率的フロントエンドデバッグ術
私が ASP.NET を選ぶ理由
がんばらない多言語化 @ FuelPHP&CodeIgniter ユーザの集い #7
僕がLasta flute選んだ理由
「プログラミングGroovy」入門(公開用)
Rails5クイックスタート
プログラマになれないあなたのための言語戦略 (Gunma.web #7 2011/12/17)
Rubyを使ったスマホアプリのUIテスト
Electronからはじめるnodejs
JavaScriptと関数型言語
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
TypeScript 1.0 Released!
Rails+Markdownでなにかつくる
「Microbit」で簡単プログラミング体験
TypeScriptの大規模開発への適用
CodeIgniter3マニュアル和訳の方法と感想
Ad

Viewers also liked (20)

PPTX
Peercastハッカソンへようこそ!
PPTX
20140712 knockoutjs-hands-on-in-osaka
PDF
ASP.NET シングル ページ アプリケーション (SPA) 詳説
PDF
最近、リアルタイムWebが面白い
PPTX
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
PPTX
秒速一億円
PDF
20140823 LL diver Angular.js で構築した note に関して
PPTX
はじめにことばありき
PPTX
「それでも人生にイエスと言う」を読んで
PPTX
HTML5がもたらすアプリ開発へのインパクト
PDF
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
PDF
[予告篇] みんなで同時プレイするクイズWebアプリでCodeQuizに挑戦!
PDF
CLR/H#74 LT IT勉強会発表用イチオシツール
PDF
Gulp ことはじめ
PPTX
「それでも人生にイエスと言う」を読んで
PDF
More Azure Websites! - JAZUGさっぽろ "きたあず" 第5回勉強会ライトニングトーク
PDF
Introduction of "MarkdownPresenter"
PPTX
Reactive Programming
PDF
AngularJS 2.0 Jumpstart
PPT
20130921レジュメ2
Peercastハッカソンへようこそ!
20140712 knockoutjs-hands-on-in-osaka
ASP.NET シングル ページ アプリケーション (SPA) 詳説
最近、リアルタイムWebが面白い
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
秒速一億円
20140823 LL diver Angular.js で構築した note に関して
はじめにことばありき
「それでも人生にイエスと言う」を読んで
HTML5がもたらすアプリ開発へのインパクト
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
[予告篇] みんなで同時プレイするクイズWebアプリでCodeQuizに挑戦!
CLR/H#74 LT IT勉強会発表用イチオシツール
Gulp ことはじめ
「それでも人生にイエスと言う」を読んで
More Azure Websites! - JAZUGさっぽろ "きたあず" 第5回勉強会ライトニングトーク
Introduction of "MarkdownPresenter"
Reactive Programming
AngularJS 2.0 Jumpstart
20130921レジュメ2
Ad

Similar to TypeScriptで作る型安全FirefoxOSアプリ (20)

PDF
クロスプラットフォーム開発雑感 #pronamaclrhsapporocpp
KEY
SnapDishの事例
PDF
Programming .NET Framework 4th edition published !
PPTX
初心者 × AngularJS × TypeScript
PDF
プログラミング同好会とすごい合同勉強会
PDF
Django から各種チャットツールに通知するライブラリを作った話
PDF
XamarinStudio勉強会 2014/09/08
PDF
The History of Groovy #GroovyBase
PPTX
Type scriptmemo
PPTX
それでもC#使いたい
PDF
できる!スマホアプリ:Webからはじまるアプリ for CMU16
PDF
【現役エンジニア向け】Cursorで効率的なAIコーディングのススメ...
PPT
Chrome 拡張のご紹介
PPTX
レガシーコードとの戦いの軌跡
PDF
OSSで楽に作るGo言語クライアントツール
PDF
最近のフロントエンドツールの紹介
PPTX
Walking front end
PDF
Frank-afcproxy
PDF
Sphinxでまとめる多言語環境APIドキュメント
PPTX
Cocos sharpでゲーム開発してみました
クロスプラットフォーム開発雑感 #pronamaclrhsapporocpp
SnapDishの事例
Programming .NET Framework 4th edition published !
初心者 × AngularJS × TypeScript
プログラミング同好会とすごい合同勉強会
Django から各種チャットツールに通知するライブラリを作った話
XamarinStudio勉強会 2014/09/08
The History of Groovy #GroovyBase
Type scriptmemo
それでもC#使いたい
できる!スマホアプリ:Webからはじまるアプリ for CMU16
【現役エンジニア向け】Cursorで効率的なAIコーディングのススメ...
Chrome 拡張のご紹介
レガシーコードとの戦いの軌跡
OSSで楽に作るGo言語クライアントツール
最近のフロントエンドツールの紹介
Walking front end
Frank-afcproxy
Sphinxでまとめる多言語環境APIドキュメント
Cocos sharpでゲーム開発してみました

TypeScriptで作る型安全FirefoxOSアプリ