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
800
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
120
第9回SenchaUG@札幌「Sencha Learning Place No.2」
tnker
0
130
第9回SenchaUG@札幌「Siestaで中の人に頑張ってもらう」
tnker
0
99
第8回SenchaUG@東京
tnker
0
120
第3回SenchaUG@東京
tnker
0
130
第2回SenchaUG@東京
tnker
1
210
第1回SenchaUG@東京
tnker
0
410
Other Decks in Technology
See All in Technology
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
540
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
210
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.5k
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
980
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
860
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
190
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
1.1k
S3アクセス制御の設計ポイント
tommy0124
3
200
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3.2k
Modern Linux
oracle4engineer
PRO
0
150
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
150
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Navigating Team Friction
lara
189
15k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
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