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
Sencha いろはの「い」
Search
Tanaka Yuuya
February 20, 2014
Technology
0
850
Sencha いろはの「い」
Sencha いろはの「い」で利用したスライドです
Tanaka Yuuya
February 20, 2014
Tweet
Share
More Decks by Tanaka Yuuya
See All by Tanaka Yuuya
第9回SenchaUG@札幌「Senchaが創造するRIA開発プラットフォームとサービス」
tnker
1
140
第9回SenchaUG@札幌「Sencha Learning Place No.2」
tnker
0
150
第9回SenchaUG@札幌「Siestaで中の人に頑張ってもらう」
tnker
0
120
第8回SenchaUG@東京
tnker
0
140
第3回SenchaUG@東京
tnker
0
140
第2回SenchaUG@東京
tnker
1
220
第1回SenchaUG@東京
tnker
0
430
Other Decks in Technology
See All in Technology
OpenClaw を Amazon Lightsail で動かす理由
uechishingo
0
250
ソフトバンク流!プラットフォームエンジニアリング実現へのアプローチ
sbtechnight
1
240
システム標準化PMOから ガバメントクラウドCoEへ
techniczna
1
160
LINEヤフーにおけるAIOpsの現在地
lycorptech_jp
PRO
4
1.8k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
13k
Escape from Excel方眼紙 ~マークダウンで繋ぐ、人とAIの架け橋~ /nikkei-tech-talk44
nikkei_engineer_recruiting
0
150
生成AI活用でQAエンジニアにどのような仕事が生まれるか/Support Required of QA Engineers for Generative AI
goyoki
1
350
新規事業×QAの挑戦:不確実性を乗りこなす!フェーズごとに求められるQAの役割変革
hacomono
PRO
0
150
頼れる Agentic AI を支える Datadog のオブザーバビリティ / Powering Reliable Agentic AI with Datadog Observability
aoto
PRO
0
250
GCASアップデート(202601-202603)
techniczna
0
240
Laravelで学ぶOAuthとOpenID Connectの基礎と実装
kyoshidaxx
4
1.6k
Goのerror型がシンプルであることの恩恵について理解する
yamatai1212
1
280
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
The Spectacular Lies of Maps
axbom
PRO
1
640
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
How to make the Groovebox
asonas
2
2k
Side Projects
sachag
455
43k
Ruling the World: When Life Gets Gamed
codingconduct
0
180
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
280
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Mobile First: as difficult as doing things right
swwweet
225
10k
Speed Design
sergeychernyshev
33
1.6k
Transcript
Sencha いろはの「い」 ~はじめての Sencha Touch 編~ Sencha いろはの「い」
Sencha いろはの「い」 自己紹介
Sencha いろはの「い」 田中裕也(たなかゆうや) Sencha UG co-Organizer Senchaオフィシャルトレーナー Twitter:@tnker Website:http://tnker.com 自己紹介
Sencha いろはの「い」 Senchaって?
Sencha いろはの「い」 ちょっと話が逸れますが 現時点で、MVCというデザインパターンが取り入れられている JavaScriptフレームワークがどのくらいあるか知ってますか?
Sencha いろはの「い」 たくさんあります 他にもたくさん十種類以上!!
Sencha いろはの「い」 たくさんあります 他にもたくさん十種類以上!!
Sencha いろはの「い」 Senchaもこの中の1つ?
Sencha いろはの「い」 半分正解です!
Sencha いろはの「い」 Senchaとは? HTML5でWebアプリケーションを構築するために必要な フレームワーク そして、それらを利用して開発を行う際の手助けとなるツール フレームワークなどのサポートなどを行うサービス を提供している、Sencha社という会社であり Sencha ExtJS
や Sencha Touch は、Sencha製品の中の1つなのです。
Sencha いろはの「い」 Senchaとは? Sencha Ext JS Sencha Touch Sencha GXT
Sencha Architect Sencha Cmd Sencha Animator Support Training Sencha Space フレームワーク層 ツール層 サービス層
Sencha いろはの「い」 何がいいのか?
Sencha いろはの「い」 何がいいのか? 標準で数百種類という標準コンポーネ ントが用意されているため、作りた い物を素早く作ることが可能
Sencha いろはの「い」 何がいいのか? レゴブロックみたい!
Sencha いろはの「い」 Sencha ExtJS
Sencha いろはの「い」 Sencha ExtJS 全てのブラウザでリッチなアプリを作成するための JavaScriptフレームワーク
Sencha いろはの「い」 Sencha ExtJS 全てのブラウザでリッチなアプリを作成するための JavaScriptフレームワーク 豊富なUIコンポーネント 堅牢なクラスシステム クロスブラウザ対応 プラグインレスのチャート
MVCアプリケーション
Sencha いろはの「い」 Sencha Touch
Sencha いろはの「い」 Sencha Touch HTML5の機能をより便利に、異なるデバイスでの差違を柔軟に吸収し、 最大限のパフォーマンスを引き出してくれるJavaScriptフレームワーク
Sencha いろはの「い」 Sencha Touch HTML5の機能をより便利に、異なるデバイスでの差違を柔軟に吸収し、 最大限のパフォーマンスを引き出してくれるJavaScriptフレームワーク 複数のプラットフォームに対応す るハイパフォーマンスHTML5フレー ムワーク モバイルUIコンポーネントが利用
可能
Sencha いろはの「い」 Sencha Touch HTML5の機能をより便利に、異なるデバイスでの差違を柔軟に吸収し、 最大限のパフォーマンスを引き出してくれるJavaScriptフレームワーク 様々なプラットフォームへの対応 Cordovaと連携したネイティブパッ ケージング TouchGrid
タッチデバイス用に最適化された、 グリッドコンポーネント
Sencha いろはの「い」 Sencha GXT
Sencha いろはの「い」 Sencha GXT Google Web Toolkit (GWT) で作る Sencha
ExtJS
Sencha いろはの「い」 Sencha GXT Google Web Toolkit (GWT) で作る Sencha
ExtJS JavaのみでHTML5アプリ開発 PureJavaコードで記述されたExtJSフレームワーク Sencha ExtJS同等の豊富なコンポーネントUI 既存Javaシステム開発者のシームレスなHTML5開発への移行
Sencha いろはの「い」 普通のJSフレームワーク とちょっと違う
Sencha いろはの「い」 サポートがある
Sencha いろはの「い」 サポートがある SDKの潜在的なバグのサポート 技術サポート オフシャルトレーニング コンサルティング
Sencha いろはの「い」 CLIツール提供してる
Sencha いろはの「い」 Sencha Cmd Senchaから提供されているCLIツー ルであるSencha Cmdを利用する ことで スケルトンプロジェクト生成 アプリケーションの最適化等
が行えるようになります!
Sencha いろはの「い」 GUIツールまである
Sencha いろはの「い」 Sencha Architect Sencha Ext JS および Sencha Touch
に対応した、GUIツール 画面上からコンポーネントをドラッ グ&ドロップで配置していくことに より、アプリケーションを組み立て ていく また、テーマなどの見た目のカスタ マイズにも対応している
Sencha いろはの「い」 さらにはプラットフォー ムまで
Sencha いろはの「い」 Sencha Space 先日Sencha社から新たに公開された、 BYOD環境用のプラットフォーム Senchaフレームワークで実装したア プリケーションを効率的に各プラット フォームにデプロイするためのもの 現在対応しているストア
App Store - iOS Google Play - Android Black Berry App World
Sencha いろはの「い」 以上です
Sencha いろはの「い」 続いて、ハンズオンに入っ ていきます!
Sencha いろはの「い」 どうやってアプリができ るのか?
Sencha いろはの「い」 どうやってアプリができるのか? 既存のコンポーネントを使って組み立てる 自分で新しくコンポーネントを作る
Sencha いろはの「い」 どうやってアプリができるのか? 既存のコンポーネントを使って組み立てる 自分で新しくコンポーネントを作る
Sencha いろはの「い」 どうやってアプリができるのか? 既存のコンポーネントを使って組み立てる 自分で新しくコンポーネントを作る 既存のコンポーネントを組み合わせて、自分で新たなコ ンポーネント(画面)を作っていく
Sencha いろはの「い」 基本機能として用意され ている多彩な部品
Sencha いろはの「い」 多彩なコンポーネント 標準で用意されている数百種類の多彩なコンポー ネント群 これらのコンポーネントだけでも、かなりのバ リエーションのため、大抵のものは組み合わせ るだけで出来ちゃいます また、標準コンポーネントのカスタマイズもも ちろん出来ます。
Sencha いろはの「い」 コンポーネントを組み合 わせる
Sencha いろはの「い」 コンポーネントの組み合わせ ビューに始まり、ツールバーやボタ ンなどのコンポーネントは、もちろ ん用意されています。 画面を作成する場合は、それらのコ ンポーネントを右の図のように組み 合わせるだけです。 view
toolbar button List
Sencha いろはの「い」 何でも作れるの?
Sencha いろはの「い」 何でも作れるの? 比較的何でも作れる - 画面構成には要注意(情報量≒DOM量) List/Detail系はとても楽 エンタメ系コンテンツは苦手 - 作れないことはないけど、Canvas等を使
い始めるとSenchaの意味が無くなってくる
Sencha いろはの「い」 今回作るアプリ
Sencha いろはの「い」 今回作るアプリ ド定番のメモ帳です。 プロジェクトを作成するところから、デ プロイを行うところまで一通りやってい きます。 ※時間が余ったらローカルストレージ対 応やテーマ切り替えをちょこっとやって みたいと思ってます
Sencha いろはの「い」 プロジェクトを作る SDKPath - ダウンロードして解凍したSencha Touch SDKフォルダのパス AppName -
JavaScriptのコードを記述する際に、アプリケーションの名前と して設定される文字列 AppDirPath - Sencha Touchのプロジェクトを出力するフォルダ ※指定したフォルダがない場合は生成されます sencha -sdk [SDKPath] generate app [AppName] [AppDirPath]
Sencha いろはの「い」 Webサーバーを起動する portNumber - Webサーバーのポートを指定 (例:8080を指定した場合は、http://localhost:8080) mapDir - Webサーバーへアクセスした際に表示させるディレクトリ
(例:現在のディレクトリを指定する場合は「./」など) sencha web -port [portNumber] start -map [mapDir]
Sencha いろはの「い」 コンポーネントを置いてみる スケルトンプロジェクトの中の app/view/Main.js を編集して、中にコンポーネントを 置く練習をしてみましょう! Main.js items xtype:
toolbar xtype: button xtype: button xtype: panel
Sencha いろはの「い」 モデルとストア モデル - 1レコードのデータ ストア - 複数のレコード(モデル)をま とめて扱うための入れ物
Note Store Note Model Note Model Note Model Note Model Note Model id Field text Field update Field
Sencha いろはの「い」 ComponentQuery Ext.ComponentQuery.query - アプリケーション全体から query式で検索を行う downメソッド - 自身を起点に自身より下の階層
の検索を行う upメソッド - 自身を起点に自身より上の階 層の検索を行う xtype: form xtype: container xtype: toolbar xtype: button CSSセレクターのような形式でコン ポーネントの検索を行う機構 xtype: panel xtype: textfield