SlideShare a Scribd company logo
1 of 30
Download to read offline
俺とAngularJS 2
2015-06-06
ふぁらお加藤
Profile
Name
ふぁらお加藤 / @PharaohKJ
Hobby
Camera / subculture
Job & Works
PhalanXware (Freelancer)
OCR system com / .net
ISDB-T MFC / Linux C++
Social Game PHP / Java
ERP+CRM AngularJS / Cordova
Information App AngularJS / CakePHP
関わったAngularJS Project
JSON
サーバMVCとクライアントMVCの関係
M
V
C
JSON M
V
C
JSON
MySQL
REST実装
REST API実装を行い、そのAPIエンドポイントを呼ぶ。
処理結果、DBの内容はJSONで返す。
AngularJSとは何か
• Googleとコミュニティで開発が進められている
JavaScript フレームワーク
• クライアントサイドで動く
• 後述する特徴があってユーザがデータを入力、選択し
て、ページを遷移しないで結果、プレビューがでるよ
うな画面を作るのが得意
• AngularJS 2との関係は・・・ちょっとむずかしい。
AngularJSとは何か - 特徴
AngularJS TIPS AngularJSを利用するには? より
http://www.buildinsider.net/web/angularjstips/0001
AngularJS 2では 双方向データバインディングは廃止
AngularJSとは何か - 立ち位置
Backbone.JSからAngular2まで、全9大JavaScriptフレームワークを書き比べた!
http://paiza.hatenablog.com/entry/2015/03/11/Backbone_JS%E3%81%8B%E3%82%89Angular2%E3%81%BE%E3%81%A7%E3%80%81%E5%85%A89%E5%A4%A7JavaScript%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF
%E3%82%92%E6%9B%B8%E3%81%8D%E6%AF%94%E3%81%B9
立ち位置
が違う
AngularJSとは何か - 学習方法
• 2はまだハードルが高い・・・。1について。
• AngularJS Hub が 神
• http://www.angularjshub.com
• 例) 双方向バインディング
• http://www.angularjshub.com/examples/basics/
twowaydatabinding/
AngularJSとは何か - 学習コスト
http://nathanleclaire.com/blog/2014/01/04/5-smooth-angularjs-application-tips/
学習していくと成果が・・・?
AngularJS、つまり、JavaScriptを
多人数で開発してみた
!
・・・結構苦労する。
そもそもJavaScriptって大規模なMVC
書いたりするには、いろいろ足りてなくねえ?
そこででてくる altJS
altJSとは
• altJS = Alternative JavaScript
• JavaScriptを置き換えるために作られた言語
• といっても、まずは altJS で書き、ユーザーに送信す
る前に、 JavaScript変換する
• たくさん種類があって、選択フローチャートなんかも
作ってる人がいる
そこでAngularJSが選んだのが TypeScript
TypeScriptとは
TypeScript はマイクロソフトによって開発された
フリーでオープンソースのプログラミング言語である。
TypeScript は JavaScript に使用するかどうかが
任意の静的型付けとクラスベースオブジェクト指向を
加えたスーパーセットとなっている。
Wikipedia - TypeScript より
ぶっちゃけ、さっきの説明文で出てきた単語が
すぐ分かる人は、すぐ便利さに気づける!
お題をやります
http://www.typescriptlang.org/Playground

ですぐ試せます。
お題 足し算
ミスって数値 + 文字列 = ?
お題 足し算
静的型付けして、ミスさせない
function( arg: Type) : Type {}
お題 動け!
同名のメソッドを持っていることを期待する
お題 動け!
あらかじめ決めたプロパティが無いとエラー!
とにかく、型がちゃんと指定できて、実行してみ
ないとわからない!ってところがちゃんと事前に
わかる!
さらに 型を見た補完まで
mover. を打ってみると?
この補完、Visual Studio でできます。
いきなりできます。素晴らしい。
多人数で開発、難しいロジックなどを書く時に
型 = Type をキッチリ定義する
ことで、
実行前にわかるバグを防ぐ、
開発環境がより便利になり、
開発・共同作業速度をあげることできます。
つまり、これでバリバ
リ、ロジックやMVCを
かけるぜ。
!
TypeScript公式ページ
learn > Handbook
に行けば単語が並んでる。
素のJavaScriptにちょっと加えるだけで
読みやすいのもウリ
!
しかし、先進的すぎるのでは?
ECMAScript6 との関係について
次期JavaScriptの仕様であろう、ES6のSuperSetである。

オープンだし、即ボツになることは無い。はず。
Angular2とECMAScript6
Angular2 は ECMAScript6ベースの
AtScript/TypeScriptを採用している
!
とにかく、ECMAScript6ベース、これで標準
をと言える。
まとめ
• AngularJSのサンプルを動かしてみた
• AngularJS 2で採用されるTypeScriptとJavaScriptを比較し
以下について説明した
• 実行前にわかるエラー
• コード作成するMicrosoft社のエディタへ型を示すことの
優位性
• Angular2はECMAScript6を取り込んでいき、標準で進んで
いるが、まだまだアルファ版。
2015-06-06 ふぁらお加藤
ご清聴ありがとうございました。

More Related Content

What's hot

What's hot (20)

One-time Binding & $digest
One-time Binding & $digestOne-time Binding & $digest
One-time Binding & $digest
 
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
今後のWeb開発の未来を考えてangular jsにしました(拡大版)今後のWeb開発の未来を考えてangular jsにしました(拡大版)
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
 
angular1脳で見るangular2
angular1脳で見るangular2angular1脳で見るangular2
angular1脳で見るangular2
 
Directiveで実現できたこと
Directiveで実現できたことDirectiveで実現できたこと
Directiveで実現できたこと
 
angular X designer - デザイナからみたAngularJS #ten1club
angular X designer - デザイナからみたAngularJS #ten1clubangular X designer - デザイナからみたAngularJS #ten1club
angular X designer - デザイナからみたAngularJS #ten1club
 
AngularJSとFluxとRiotJSと
AngularJSとFluxとRiotJSとAngularJSとFluxとRiotJSと
AngularJSとFluxとRiotJSと
 
CSS Living StyleGuide
CSS Living StyleGuideCSS Living StyleGuide
CSS Living StyleGuide
 
Angular#Kanazawa
Angular#KanazawaAngular#Kanazawa
Angular#Kanazawa
 
AngularJS 概説
AngularJS 概説AngularJS 概説
AngularJS 概説
 
Angular2実践入門
Angular2実践入門Angular2実践入門
Angular2実践入門
 
Angular js開発事例
Angular js開発事例Angular js開発事例
Angular js開発事例
 
noteをAngularJSで構築した話
noteをAngularJSで構築した話noteをAngularJSで構築した話
noteをAngularJSで構築した話
 
Angular js はまりどころ
Angular js はまりどころAngular js はまりどころ
Angular js はまりどころ
 
Front-end package managers
Front-end package managersFront-end package managers
Front-end package managers
 
今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました
 
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
 
クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性
 
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
 
AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化
 
普段Reactを触ってる僕が Angularを触ってみた感想を共有する
普段Reactを触ってる僕が Angularを触ってみた感想を共有する普段Reactを触ってる僕が Angularを触ってみた感想を共有する
普段Reactを触ってる僕が Angularを触ってみた感想を共有する
 

Similar to 俺とAngular JS 2

わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
normalian
 

Similar to 俺とAngular JS 2 (20)

JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・AndroidアプリハンズオンJavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
 
Ionicでハイブリッドアプリ入門①
Ionicでハイブリッドアプリ入門①Ionicでハイブリッドアプリ入門①
Ionicでハイブリッドアプリ入門①
 
AngularJSの高速化
AngularJSの高速化AngularJSの高速化
AngularJSの高速化
 
Going Serverless, Building Applications with No Servers
Going Serverless, Building Applications with No ServersGoing Serverless, Building Applications with No Servers
Going Serverless, Building Applications with No Servers
 
Nodejs and mongodb
Nodejs and mongodbNodejs and mongodb
Nodejs and mongodb
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化
 
CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発CordovaでAngularJSアプリ開発
CordovaでAngularJSアプリ開発
 
2016/12/17 ASP.NET フロントエンドタスク入門
 2016/12/17 ASP.NET フロントエンドタスク入門 2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
 
Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線
 
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
 
AngularJS x Chrome Apps (2014.08.23 #gdgkobe event)
AngularJS x Chrome Apps (2014.08.23 #gdgkobe event)AngularJS x Chrome Apps (2014.08.23 #gdgkobe event)
AngularJS x Chrome Apps (2014.08.23 #gdgkobe event)
 
Java web application testing
Java web application testingJava web application testing
Java web application testing
 
Our Track to Modern Angular
Our Track to Modern AngularOur Track to Modern Angular
Our Track to Modern Angular
 
ngJapan報告会
ngJapan報告会ngJapan報告会
ngJapan報告会
 
我が家のフロントエンド開発事情
我が家のフロントエンド開発事情我が家のフロントエンド開発事情
我が家のフロントエンド開発事情
 
楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa
 
Om Next ~React.jsを超えて
Om Next ~React.jsを超えてOm Next ~React.jsを超えて
Om Next ~React.jsを超えて
 
Lightning componentとlightning design system
Lightning componentとlightning design systemLightning componentとlightning design system
Lightning componentとlightning design system
 
Mvc conf session_5_isami
Mvc conf session_5_isamiMvc conf session_5_isami
Mvc conf session_5_isami
 
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
 

More from Masayuki KaToH

More from Masayuki KaToH (20)

APAC Community Summit DevOps Breakout 部屋.pptx
APAC Community Summit DevOps Breakout 部屋.pptxAPAC Community Summit DevOps Breakout 部屋.pptx
APAC Community Summit DevOps Breakout 部屋.pptx
 
LINE × AWSの可能性や事例について語り合う夕べ
LINE × AWSの可能性や事例について語り合う夕べLINE × AWSの可能性や事例について語り合う夕べ
LINE × AWSの可能性や事例について語り合う夕べ
 
俺と Active Storage + CloudFront
俺と Active Storage + CloudFront俺と Active Storage + CloudFront
俺と Active Storage + CloudFront
 
俺とオープンデータ
俺とオープンデータ俺とオープンデータ
俺とオープンデータ
 
Capacitor
CapacitorCapacitor
Capacitor
 
俺と最近のクラウドAI系サービス
俺と最近のクラウドAI系サービス俺と最近のクラウドAI系サービス
俺と最近のクラウドAI系サービス
 
俺と超高速リアルタイム検索APIをたぶん支えているAWS
俺と超高速リアルタイム検索APIをたぶん支えているAWS俺と超高速リアルタイム検索APIをたぶん支えているAWS
俺と超高速リアルタイム検索APIをたぶん支えているAWS
 
俺と AWS Summit 2019 振り返り
俺と AWS Summit 2019 振り返り俺と AWS Summit 2019 振り返り
俺と AWS Summit 2019 振り返り
 
俺と ha4go と Civic Tech Application & Open Data Catalog
俺と ha4go と Civic Tech Application & Open Data Catalog俺と ha4go と Civic Tech Application & Open Data Catalog
俺と ha4go と Civic Tech Application & Open Data Catalog
 
俺 と JAWS DAYS 2019
俺 と JAWS DAYS 2019俺 と JAWS DAYS 2019
俺 と JAWS DAYS 2019
 
俺と otoya
俺と otoya俺と otoya
俺と otoya
 
俺とPrivate Forkと炭の選び方とC++からRubyへのブレイクスルーとポモドーロテクニックとコミュニティ貢献と浪人アカウントと糖尿病
俺とPrivate Forkと炭の選び方とC++からRubyへのブレイクスルーとポモドーロテクニックとコミュニティ貢献と浪人アカウントと糖尿病俺とPrivate Forkと炭の選び方とC++からRubyへのブレイクスルーとポモドーロテクニックとコミュニティ貢献と浪人アカウントと糖尿病
俺とPrivate Forkと炭の選び方とC++からRubyへのブレイクスルーとポモドーロテクニックとコミュニティ貢献と浪人アカウントと糖尿病
 
クラウドを用いるIoT開発における実費レポート
クラウドを用いるIoT開発における実費レポートクラウドを用いるIoT開発における実費レポート
クラウドを用いるIoT開発における実費レポート
 
俺と 2017 Code for Kanazawa Civic Hack Night運営
俺と 2017 Code for Kanazawa  Civic Hack Night運営俺と 2017 Code for Kanazawa  Civic Hack Night運営
俺と 2017 Code for Kanazawa Civic Hack Night運営
 
俺とキーボード
俺とキーボード俺とキーボード
俺とキーボード
 
俺とディスプレイ
俺とディスプレイ俺とディスプレイ
俺とディスプレイ
 
俺と通知
俺と通知俺と通知
俺と通知
 
JAWS DAYS 2018 行ってきた & スタッフした
JAWS DAYS 2018 行ってきた & スタッフしたJAWS DAYS 2018 行ってきた & スタッフした
JAWS DAYS 2018 行ってきた & スタッフした
 
JAWS DAYS 2018 行ってきた & スタッフした
JAWS DAYS 2018  行ってきた & スタッフしたJAWS DAYS 2018  行ってきた & スタッフした
JAWS DAYS 2018 行ってきた & スタッフした
 
俺とGitHubとcodeシリーズ
俺とGitHubとcodeシリーズ俺とGitHubとcodeシリーズ
俺とGitHubとcodeシリーズ
 

Recently uploaded

Recently uploaded (12)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

俺とAngular JS 2