Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Toshio Ehara
4,180 views
AngularJS+TypeScriptを試してみた。
第7回西区プログラム勉強会 http://www.zusaar.com/event/3507006 twitterハッシュ: #nishipro
Technology
◦
Read more
5
Save
Share
Embed
Embed presentation
Download
Downloaded 12 times
1
/ 24
2
/ 24
3
/ 24
4
/ 24
5
/ 24
6
/ 24
7
/ 24
8
/ 24
9
/ 24
10
/ 24
11
/ 24
12
/ 24
13
/ 24
14
/ 24
15
/ 24
16
/ 24
17
/ 24
18
/ 24
19
/ 24
20
/ 24
21
/ 24
22
/ 24
23
/ 24
24
/ 24
More Related Content
PPTX
ReactでCMSを作ったときにハマったこと
by
kazuki matsumura
PDF
Alt01-LT
by
Yuta Hiroto
PDF
DevLove Kansai AWS
by
Takuro Sasaki
PDF
SIROK技術勉強会 #1 「Reactってなんだ?」
by
Naoyuki Kataoka
PPTX
Angular js はまりどころ
by
Ayumi Goto
PDF
React.js + Flux
by
dsuke Takaoka
PDF
Rubyで操るAWS 第67回Ruby関西 勉強会
by
Takuro Sasaki
PDF
JAWS-UG初心者支部 AWS書籍活用術
by
Takuro Sasaki
ReactでCMSを作ったときにハマったこと
by
kazuki matsumura
Alt01-LT
by
Yuta Hiroto
DevLove Kansai AWS
by
Takuro Sasaki
SIROK技術勉強会 #1 「Reactってなんだ?」
by
Naoyuki Kataoka
Angular js はまりどころ
by
Ayumi Goto
React.js + Flux
by
dsuke Takaoka
Rubyで操るAWS 第67回Ruby関西 勉強会
by
Takuro Sasaki
JAWS-UG初心者支部 AWS書籍活用術
by
Takuro Sasaki
What's hot
PDF
JAWSUG Kansai Simple Workflow Service (SWF)
by
Takuro Sasaki
PDF
angular X designer - デザイナからみたAngularJS #ten1club
by
silvers ofsilvers
PDF
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
by
Takuro Sasaki
PDF
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
by
tomonari takahashi
PPTX
Web開発初心者がReactをチームに導入して半年経った
by
kazuki matsumura
PDF
JAWSUG Osaka S3 CloudSearch
by
Takuro Sasaki
PDF
なぜ人は必死でjQueryを捨てようとしているのか
by
Yoichi Toyota
PPTX
【2017早めの夏休み自由研究】SPAとサーバーレスについて
by
kazuki matsumura
PDF
Innovation eggcloudnative
by
Takuro Sasaki
PDF
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
by
Yusuke Murata
PDF
サーバサイドエンジニアが 1年間まじめにSPAやってみた
by
Itaru Kitagawa
PPTX
普段Reactを触ってる僕が Angularを触ってみた感想を共有する
by
kazuki matsumura
PPTX
AngularJSを浅めに紹介します
by
nkazuki
PDF
RailsでReact.jsを動かしてみた話
by
yoshioka_cb
PPTX
React を導入したフロントエンド開発
by
daisuke-a-matsui
PDF
Jawsug osaka10 service®ions
by
Takuro Sasaki
PDF
モダンJavaScriptフレームワークで技術的負債を作らないために
by
YukiOniki
PDF
High Performance Gulp
by
Keisuke Imura
PDF
AngularJSの高速化
by
Kon Yuichi
PDF
Jaws ug北九州第3回もくもく会amazon s3資料
by
Yutaka Fujisaki
JAWSUG Kansai Simple Workflow Service (SWF)
by
Takuro Sasaki
angular X designer - デザイナからみたAngularJS #ten1club
by
silvers ofsilvers
Scraping withawsAWSを利用してスクレイピングの悩みを解決するチップス
by
Takuro Sasaki
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
by
tomonari takahashi
Web開発初心者がReactをチームに導入して半年経った
by
kazuki matsumura
JAWSUG Osaka S3 CloudSearch
by
Takuro Sasaki
なぜ人は必死でjQueryを捨てようとしているのか
by
Yoichi Toyota
【2017早めの夏休み自由研究】SPAとサーバーレスについて
by
kazuki matsumura
Innovation eggcloudnative
by
Takuro Sasaki
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
by
Yusuke Murata
サーバサイドエンジニアが 1年間まじめにSPAやってみた
by
Itaru Kitagawa
普段Reactを触ってる僕が Angularを触ってみた感想を共有する
by
kazuki matsumura
AngularJSを浅めに紹介します
by
nkazuki
RailsでReact.jsを動かしてみた話
by
yoshioka_cb
React を導入したフロントエンド開発
by
daisuke-a-matsui
Jawsug osaka10 service®ions
by
Takuro Sasaki
モダンJavaScriptフレームワークで技術的負債を作らないために
by
YukiOniki
High Performance Gulp
by
Keisuke Imura
AngularJSの高速化
by
Kon Yuichi
Jaws ug北九州第3回もくもく会amazon s3資料
by
Yutaka Fujisaki
Viewers also liked
PDF
スマホアプリ開発者のためのWeb api開発入門の入門
by
Kenyu Miura
PPTX
「それでも人生にイエスと言う」を読んで
by
Shumpei Shiraishi
PDF
More Azure Websites! - JAZUGさっぽろ "きたあず" 第5回勉強会ライトニングトーク
by
Jun-ichi Sakamoto
PPTX
HTML5がもたらすアプリ開発へのインパクト
by
Shumpei Shiraishi
PPTX
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
by
Shumpei Shiraishi
PPTX
秒速一億円
by
Shumpei Shiraishi
PPTX
「それでも人生にイエスと言う」を読んで
by
Shumpei Shiraishi
PDF
Gulp ことはじめ
by
Kyohei Morimoto
PDF
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
by
Akira Inoue
PDF
[予告篇] みんなで同時プレイするクイズWebアプリでCodeQuizに挑戦!
by
Jun-ichi Sakamoto
PDF
CLR/H#74 LT IT勉強会発表用イチオシツール
by
Jun-ichi Sakamoto
PDF
AngularJS 2.0 Jumpstart
by
Filipe Falcão
PDF
最近、リアルタイムWebが面白い
by
Narami Kiyokura
PDF
20140823 LL diver Angular.js で構築した note に関して
by
Shoei Takamaru
PPT
20130921レジュメ2
by
Shumpei Shiraishi
PDF
Introduction of "MarkdownPresenter"
by
Jun-ichi Sakamoto
PPTX
はじめにことばありき
by
Shumpei Shiraishi
PPTX
Reactive Programming
by
maruyama097
PDF
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
by
Akira Inoue
PDF
変身×フランツ・カフカ
by
Shumpei Shiraishi
スマホアプリ開発者のためのWeb api開発入門の入門
by
Kenyu Miura
「それでも人生にイエスと言う」を読んで
by
Shumpei Shiraishi
More Azure Websites! - JAZUGさっぽろ "きたあず" 第5回勉強会ライトニングトーク
by
Jun-ichi Sakamoto
HTML5がもたらすアプリ開発へのインパクト
by
Shumpei Shiraishi
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
by
Shumpei Shiraishi
秒速一億円
by
Shumpei Shiraishi
「それでも人生にイエスと言う」を読んで
by
Shumpei Shiraishi
Gulp ことはじめ
by
Kyohei Morimoto
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
by
Akira Inoue
[予告篇] みんなで同時プレイするクイズWebアプリでCodeQuizに挑戦!
by
Jun-ichi Sakamoto
CLR/H#74 LT IT勉強会発表用イチオシツール
by
Jun-ichi Sakamoto
AngularJS 2.0 Jumpstart
by
Filipe Falcão
最近、リアルタイムWebが面白い
by
Narami Kiyokura
20140823 LL diver Angular.js で構築した note に関して
by
Shoei Takamaru
20130921レジュメ2
by
Shumpei Shiraishi
Introduction of "MarkdownPresenter"
by
Jun-ichi Sakamoto
はじめにことばありき
by
Shumpei Shiraishi
Reactive Programming
by
maruyama097
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
by
Akira Inoue
変身×フランツ・カフカ
by
Shumpei Shiraishi
Similar to AngularJS+TypeScriptを試してみた。
PDF
TypeScript 1.0 オーバービュー
by
Akira Inoue
PPTX
エンタープライズ分野での実践AngularJS
by
Ayumi Goto
PDF
AngularJS+TypeScript - AngularJS 1周年記念勉強会
by
Masahiro Wakame
PDF
ng-japan 2015 TypeScript+AngularJS 1.3
by
Masahiro Wakame
PDF
TypeScript 言語処理系ことはじめ
by
Yu Nobuoka
PPTX
TypeScriptについて
by
echigoya-jp
PDF
TypeScript ファーストステップ (Rev.2) ~ Any browser. Any host. Any OS. Open Source. ~
by
Akira Inoue
PPTX
初心者 × AngularJS × TypeScript
by
Yuta Matsumura
PDF
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
by
decode2016
PDF
TypeScriptは明日から使うべき
by
Masahiro Wakame
TypeScript 1.0 オーバービュー
by
Akira Inoue
エンタープライズ分野での実践AngularJS
by
Ayumi Goto
AngularJS+TypeScript - AngularJS 1周年記念勉強会
by
Masahiro Wakame
ng-japan 2015 TypeScript+AngularJS 1.3
by
Masahiro Wakame
TypeScript 言語処理系ことはじめ
by
Yu Nobuoka
TypeScriptについて
by
echigoya-jp
TypeScript ファーストステップ (Rev.2) ~ Any browser. Any host. Any OS. Open Source. ~
by
Akira Inoue
初心者 × AngularJS × TypeScript
by
Yuta Matsumura
DEV-011_TypeScript ~Any browser. Any host. Any OS. Open Source~
by
decode2016
TypeScriptは明日から使うべき
by
Masahiro Wakame
More from Toshio Ehara
PDF
iPhoneアプリを Javaで書くよ?
by
Toshio Ehara
PDF
Java初心者勉強会(2015/08/07)資料
by
Toshio Ehara
PDF
Java電卓勉強会資料
by
Toshio Ehara
PDF
BABELで、ES2015(ES6)を学ぼう!
by
Toshio Ehara
PDF
AngularJSで業務システムUI部品化
by
Toshio Ehara
PDF
traceur-compilerで ECMAScript6を体験
by
Toshio Ehara
PDF
traceur-compilerで未来のJavaScriptを体験
by
Toshio Ehara
PDF
AngularJS入門の巻2
by
Toshio Ehara
PDF
JenkinsをJava開発でこんな感じで使っています
by
Toshio Ehara
PDF
AngularJS入門の巻
by
Toshio Ehara
PDF
AngularJSのDirectiveで俺俺タグつくっちゃお
by
Toshio Ehara
PDF
HTML5のCanvas入門 - Img画像を編集してみよう -
by
Toshio Ehara
PDF
BACKBONEJS+SCSS+JavaEE(JAX-RS) 今風のWebアプリをNetBeansで入門!
by
Toshio Ehara
PDF
福岡のIT勉強会情報の集め方(LT資料)
by
Toshio Ehara
PDF
BACKBONE.JSによるWebアプリケーション開発について
by
Toshio Ehara
PDF
BACKBONE.JSにJasmineでテストコード書いてみた (LT資料)
by
Toshio Ehara
PDF
JavaScriptのテストコード 一緒に勉強しませんか??
by
Toshio Ehara
PDF
【未発表】Backbone.jsとJavaEE7でWebアプリを作ろう!(第1回) 〜GETで一覧編〜
by
Toshio Ehara
PDF
LT Leap MotionとJavaScriptで遊ぼう!
by
Toshio Ehara
PDF
JavaScriptもBACKBONE.JSならスッキリ ~MVCぽいのを初体験!~
by
Toshio Ehara
iPhoneアプリを Javaで書くよ?
by
Toshio Ehara
Java初心者勉強会(2015/08/07)資料
by
Toshio Ehara
Java電卓勉強会資料
by
Toshio Ehara
BABELで、ES2015(ES6)を学ぼう!
by
Toshio Ehara
AngularJSで業務システムUI部品化
by
Toshio Ehara
traceur-compilerで ECMAScript6を体験
by
Toshio Ehara
traceur-compilerで未来のJavaScriptを体験
by
Toshio Ehara
AngularJS入門の巻2
by
Toshio Ehara
JenkinsをJava開発でこんな感じで使っています
by
Toshio Ehara
AngularJS入門の巻
by
Toshio Ehara
AngularJSのDirectiveで俺俺タグつくっちゃお
by
Toshio Ehara
HTML5のCanvas入門 - Img画像を編集してみよう -
by
Toshio Ehara
BACKBONEJS+SCSS+JavaEE(JAX-RS) 今風のWebアプリをNetBeansで入門!
by
Toshio Ehara
福岡のIT勉強会情報の集め方(LT資料)
by
Toshio Ehara
BACKBONE.JSによるWebアプリケーション開発について
by
Toshio Ehara
BACKBONE.JSにJasmineでテストコード書いてみた (LT資料)
by
Toshio Ehara
JavaScriptのテストコード 一緒に勉強しませんか??
by
Toshio Ehara
【未発表】Backbone.jsとJavaEE7でWebアプリを作ろう!(第1回) 〜GETで一覧編〜
by
Toshio Ehara
LT Leap MotionとJavaScriptで遊ぼう!
by
Toshio Ehara
JavaScriptもBACKBONE.JSならスッキリ ~MVCぽいのを初体験!~
by
Toshio Ehara
Recently uploaded
PDF
論文紹介:"Reflexion: language agents with verbal reinforcement learning", "MA-LMM...
by
Toru Tamaki
PDF
歴史好きのスクラム話 JBUG名古屋#5 AI時代のデータドリブンなプロジェクト管理
by
Tatsuya Naiki
PDF
LoRaWAN小売業DXソリューション ~天候データと人流カウンターを利用して売り上げアップに貢献!
by
CRI Japan, Inc.
PDF
論文紹介:Simultaneous Detection and Interaction Reasoning for Object-Centric Acti...
by
Toru Tamaki
PDF
論文紹介:"MM-Tracker: Motion Mamba for UAV-platform Multiple Object Tracking", "M...
by
Toru Tamaki
PDF
How We Operated Ticket-Driven Development in JIRA.pdf
by
akipii ogaoga
PDF
手軽に広範囲でプライバシーを守りながら人数カウントできる ~ LoRaWAN AI人流カウンター PF52 日本語カタログ
by
CRI Japan, Inc.
論文紹介:"Reflexion: language agents with verbal reinforcement learning", "MA-LMM...
by
Toru Tamaki
歴史好きのスクラム話 JBUG名古屋#5 AI時代のデータドリブンなプロジェクト管理
by
Tatsuya Naiki
LoRaWAN小売業DXソリューション ~天候データと人流カウンターを利用して売り上げアップに貢献!
by
CRI Japan, Inc.
論文紹介:Simultaneous Detection and Interaction Reasoning for Object-Centric Acti...
by
Toru Tamaki
論文紹介:"MM-Tracker: Motion Mamba for UAV-platform Multiple Object Tracking", "M...
by
Toru Tamaki
How We Operated Ticket-Driven Development in JIRA.pdf
by
akipii ogaoga
手軽に広範囲でプライバシーを守りながら人数カウントできる ~ LoRaWAN AI人流カウンター PF52 日本語カタログ
by
CRI Japan, Inc.
AngularJS+TypeScriptを試してみた。
1.
AngularJS+TypeScriptを試してみた。 2014/3/2(日) 第7回西区プログラム勉強会 Photo by
Web制作向け無料写真素材/ぱくたそ http://www.pakutaso.com
2.
-自己紹介株式会社キャムの江原と申します。 プログラムしてます。 @itokami1123 企業の経営戦略に役立つサービス「CAM MACS」を AWSにて提供してます。
3.
会社で作る新しいサービスの技術基盤を色々検証してます。 そこでAngularJSの検証をしています。
4.
でも JavaScriptで大規模って言うとこういう印象が…
5.
JavaScript × 大規模 ≒ デスマーチ
6.
そこでTypeScriptは、どうかな?話になりました。
7.
今日は TypeScriptでAngularJSを書いたときに どんな感じになるのかを発表したいと思います。
8.
以下機能をTypeScriptで書いてみました。 module controller service directive
9.
1. module モジュール(名前空間みたいな)の作成、登録、取得を グローバル空間で行う // JavaScript例 //
module生成 modu1に依存します angular.module( "app", [ "modu1"]); // “app”moduleを参照してcontrollerを追加 angular.module( "app").controller( …
10.
TypeScriptでmoduleを書くと…あまり変わらないですね // TypeScript // module生成
modu1に依存します angular.module( "app", [ "modu1"]); // “app”moduleを参照してcontrollerを追加 angular.module( "app").controller( …
11.
2. controller ビュー(DOM)に割り当てるコントローラー // View
DOM sample <div ng-controller="SampleCtr" > <h1 ng-click="clickEvent()" >{{text}}</h1> <input type="text" ng-model="text" /> </div>
12.
// JavaScript例 angular.module("app.controller", ["app.service"]) .controller("SampleCtr",
function($scope) { $scope.text = ""; $scope.clickEvent = function(){ $scope.text += " click!! "; }; });
13.
TypeScriptでクラスぽくControllerを書くと
14.
型定義情報 ///<reference path='xxx/typings/angularjs/angular.d.ts' /> module
Sample { 継承して作ります export interface Scope extends ng.IScope { text: string; clickEvent: Function; 使用するScopeの型定義 } export class SampleCtr { constructor(public $scope: Scope ) { public付くと インスタンス変数に this.$scope.text = “"; // 初期化 this.$scope.clickEvent = angular.bind(this, this.click); } click() { this.$scope.text += " click!! "; } bindでメソッドと $scopeを紐づけます } } ! angular.module("app.controller", []) .controller("SampleCtr", Sample.SampleCtr); ! angular.module("app", ["app.controller"]); moduleへの定義は JSとまったく同じです。
15.
例えばIntelliJで 定義に飛ぶと こんな感じで見れます。 ///<reference path='xxx/typings/angularjs/angular.d.ts' /> module
Sample { export interface Scope extends ng.IScope {
16.
3. service コントローラーが呼び出す共通ロジック
17.
注)angularのモジュールではないです。 TypeScriptは名前空間の機能があります。 ///<reference path='xxx/typings/angularjs/angular.d.ts'
/> module Srv { ! export class SampleSrv { ! constructor() { } ! addText(text:string):string { return text + " [add text]"; } } angularのモジュールにサービス機能として登録します。 } ! angular.module("app.service", []) .service("srv", Srv.SampleSrv); サービスは各Controllerの共通処理を記述します。
18.
Controllerで使用する為定義を読込! ///<reference path='xxx/typings/angularjs/angular.d.ts' /> ///<reference
path='../service/SampleSrvModule.ts' /> module Sample { // ・・・省略・・・ export class SampleCtr { srv 文字列で登録している サービスのインスタンスを呼び出し constructor(public $scope:Scope,public srv: Srv.SampleSrv) { // ・・・省略・・・ } srv 文字列で登録している サービスのインスタンスを呼び出し click() { this.$scope.text = this.srv.addText(this.$scope.text); } } } JSと同じ書き方でcontrollerモジュールに serviceモジュールを依存させます ! angular.module("app.controller", ["app.service"]) .controller("SampleCtr", Sample.SampleCtr); ! angular.module("app", ["app.controller"]);
19.
4. Directive 続いてカスタム属性を書いてみましょう! DirectiveはDOM操作を担当します。
20.
IDirectiveインターフェースを実装してクラスを作ります。 ///<reference path='./libs/typings/angularjs/angular.d.ts' /> ! module
MyDirective { export class NsStyle implements ng.IDirective { restrict: string = "A"; replace: boolean = false; scope: any = false; compile(elem:ng.IAugmentedJQuery, attrs:ng.IAttributes):any { elem.addClass("nishi"); } このDirectiveがつけられたタグのclass名に nishi が追加されます } } ! Directiveの定義は オブジェクトなので new します。 ! angular.module("app.directive", []) .directive("nStyle", () => new MyDirective.NsStyle() ); ! angular.module("app", ["app.controller", "app.directive"]);
21.
まとめ!
22.
まとめ! 学習コスト高め AngularJSの学習とTypeScriptの学習を同時にすると頭が 混乱します! うまく書けば保守性が高そう TypeScriptはJSには無い型が宣言出来る為、IDEの補完や 定義に飛んだりコンパイルエラーに出来たりできます。
23.
懸念も多いですね… 新規導入するには初期コストがかかりますし まだまだノウハウが少ないので 実案件より先に社内システムとかで 練習した方が良さそうです… でも、もしかしたら一気に流行るかもしれませんので 良かったら少し味見してみては??
24.
ご清聴ありがとうございました!
Download