BUY 2010/06/24
Google Web Toolkit(GWT)についてもっと踏み込んだ理解がしたいなと思って書籍・Web等を調査。
GWTって、そこまで技術的に多く広まっているものでもないのかな…?入門編で触った限りではかなり便利そうなのは確かなので、以下の書籍類を(多少値は張ったが)購入。購入分の元は取る勢いでこれから読み進め、理解していきたいと思います。
後のリファレンス用として目次も併記。

- 作者: ライアン・デュースバリー,Ryan Dewsbury,松田晃一,由谷哲夫
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2008/12/22
- メディア: 単行本(ソフトカバー)
- 購入: 4人 クリック: 32回
- この商品を含むブログ (14件) を見る
後半(6章以降)はソースコードも断片的なものだったのでサポートサイトにてソースコードを入手しようとしたものの、全面的に存在せず(無くなった? ※2010/06/24現在)。読書実践も今のところ5章まで完了の時点で一時保留。
- サポートサイト:
- ソースコード:
- 目次
### <目次> ###
第1部 Google Web Toolkitを理解する
第1章 Google Web Toolkitによる最初のステップ
Ajaxの出現
Webアプリケーションについて再考する
Ajaxのためのソフトウェア技術
みなさんのバックグラウンドを評価する
アプリケーション開発スキルの重要性
ツールキットパッケージの概要
GWTアプリケーションの概要
まとめ
第2章 ユーザインタフェースライブラリの概要
静的ウィジェット
ラベル/HTML/Image/Hyperlink
フォームウィジェット
ボタン/ToggleButtonとPushButton/Checkbox/RadioButton/ListBox
SuggestBox/TextBox/PasswordTextBox/TextArea/RichTextArea
FileUpload/Hidden
コンプレックスオブジェクト
Tree/MenuBar
シンプルレイアウトパネル
FlowPanel/HorizontalPanelとVerticalPanel/HorizontalSplitPanelとVerticalSplitPanel
FlexTableとGrid/DeckPanel/DockPanel/HTMLPanel
コンプレックスレイアウトパネル
StackPanel/TabPanel
シンプルコンテナパネル
Composite/SimplePanel/ScrollPanel/FocusPanel
コンプレックスコンテナパネル
FormPanel/DisclosurePanel/PopUpPanel
DialogBox
ユーザインタフェースフレームワークを繋ぐもの
まとめ
第3章 サーバーインテグレーション技術
基本的なサーバインテグレーション技術
データフォーマットライブラリの使用
サードパーティサーバのインテグレーション
高度なサーバインテグレーション技術
まとめ
第4章 Ajaxのソフトウェア開発
開発環境を準備する
プロジェクトをEclipseに追加する
EclipseでJavaコードを書く
アプリケーションの構造を構成する
アプリケーションをテストする
モジュールを開発し共有する
アプリケーションの配布
まとめ
第5章 効果的なツールキットの使い方
非同期プログラミングを用いる
戻るボタンを扱う
CSSを使いエレガントなインタフェースを作成する
ツールキットを拡張する
アプリケーションを国際化する
コードを生成する
パフォーマンスを向上させる
まとめ
第2部 実例に基づくリッチなWebアプリケーション
第6章 ガジェットデスクトップアプリケーション
Containerアプリケーションパターンを用いる
モデルを設計する
カラムコンテナインタフェースを作成する
ビューにガジェットを書く
ドラッグ&ドロップガジェットを作成する
ユーザインタフェースをCSSできれいにする
永続性を追加する
外のJavascriptライブラリを用いる
まとめ
第7章 マルチサーチアプリケーション
Aggregatorアプリケーションパターンを使う
マルチサーチアプリケーションの設計
モデル
ビュー
コントローラ
構造化されたデータフォーマットをインポートする
Yahoo! Searchとインテグレーションする
Google Searchとインテグレーションする
Flickrサーチとインテグレーションする
Amazon Searchとインテグレーションする
まとめ
第8章 ブログエディタアプリケーション
Workspaceアプリケーションパターンを用いる
Webサービスクライアントを作成する
ブログエディタの設計
マルチドキュメントビューを作成する
リッチテキスト編集処理を追加する
Blogger APIと統合する
まとめ
第9章 インスタントメッセンジャーアプリケーション
Collaboratorアプリケーションパターンを使う
インスタントメッセンジャーの設計
モデル
補完的インタフェースを構築する
コントローラの概要
GWT-RPCを使う
サーバに接続する
RPCイベントを追加する
インスタントメッセンジャーサーバ
サーバ側の高度なI/Oを使う
まとめ
第10章 データベースエディタアプリケーション
Managerアプリケーションパターンを用いる
モデルを設計する
非同期データアクセスオブジェクトを使用する
2ペイン型のエディタインタフェースを作成する
サーバとのインテグレーションの概要
汎用のGWTコードジェネレータを書く
アクションベースのPHPスクリプトと統合する
RESTを用いたRuby on Railsアプリケーションとインテグレーションする
GWT-RPCサーブレットとインテグレーションする
まとめ
- 作者: デビッド・ギアリー,ロブ・ゴードン,David Geary,Rob Gordon,柴田芳樹
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2008/08/06
- メディア: 単行本(ソフトカバー)
- 購入: 3人 クリック: 28回
- この商品を含むブログ (6件) を見る
こちらはより実践に即していると思われる内容。(まだ中身は読んでない)
### <目次> ### ソリューション1 GWTの基礎とその先 本書では これから学ぶこと GWTウィジェットの紹介 GWTアプリケーションの構造 GWTパネルで構成されたユーザインタフェース ルートパネル user.client.uiに関するAPI CSSスタイルでウィジェットのスタイリング GWTでイベント駆動プログラミング 国際化とローカライズ GWT国際化の4ステップを実装 GWTのi18nCreatorコマンドの使用 GWTウェブアプリケーションでの新たなビュー GWTのヒストリー機構 Historyクラスとヒストリーリスナーの追加 ブラウザの『戻る』ボタンを統合 GWTのピアー:DOM検索 ウィジェットへのキーボードフォーカス設定に遅延コマンドを使用 リモートプロシージャコールの実装 カスタムウィジェットの使用 カスタムウィジェットをGWTモジュールにパッケージ化 完全なログインアプリケーション ここのソリューションで説明した内容 ソリューション2 Javascriptの統合 これから学ぶこと Script.aculo.us Javascriptライブラリーの統合 HTMLファイルにJavascriptファイルをインポート GWT設定ファイルにJavascriptファイルをインポート Javascriptカレンダーの統合 ここのソリューションで説明した内容 ソリューション3 カスタムウィジェット実装 これから学ぶこと コンポジットのカスタムウィジェット コンポジットウィジェットとパススルーメソッド イベントハンドラ― 変更イベントの発行 HasTextインタフェースとHasNameインタフェースの実装 Script.aculo.usのBlindDown効果を取り込む 低レベルのカスタムウィジェット 低レベルのカスタムウィジェットでのDOMクラスの使用 カスタムウィジェットに対するデフォルトCSSスタイルの設定 カスタムウィジェットに対するScript.aculo.us効果をパラメータ化 ここのソリューションで説明した内容 ソリューション4 ビューポートと地図 これから学ぶこと ビューポート 汎用ビューポートウィジェット 地図アプリケーションのファイルとディレクトリ Viewport実装 ピクセル位置でウィジェットを配置するためにAbsolutePanelインスタンスを使用 ビューポート内のビューをドラッグ マウスイベントに対処するためのフォーカスパネルの使用 マウスイベントに対するブラウザの反応を制御するためにイベントプレビューを使用 イベントの捕捉 ビューポートのビューをクリッピング CSSスタイルでマウスカーソルを変更 カスタムウィジェットにデフォルトのCSSスタイル名を追加 ビューポートによるフォーカスパネルの使用:再訪 アニメーションジェスチャーを持つビューポートのビュー Viewportの最終版 ドラッグジェスチャーの組み込み ドラッグジェスチャーに反応してスクロールをアニメーション化 ドラッグジェスチャーと同じ方向へスクロールをアニメーション化 スクロールするアニメーションのスピードを変更 ここのソリューションで説明した内容 ソリューション5 オンラインウェブサービスへのアクセス これから学ぶこと Yahoo!地図ウェブサービス 例題アプリケーションの調査 地図アプリケーションのファイルとディレクトリの概要 YahooMapsアプリケーションの実装 Yahoo!ウェブサービスへのアクセス ズーム! ここのソリューションで説明した内容 ソリューション6 ドラッグ&ドロップ これから学ぶこと ドラッグ&ドロップ例題アプリケーション ドラッグ&ドロップモジュール アプリケーションの設定ファイルでドラッグ&ドロップモジュールを継承 ドラッグ&ドロップアプリケーションの実装 音楽プレイヤーとショッピングカートのパネルコンポーネントの使用 ドラッグソースとドロップターゲットの使用 CSSスタイルの定義 GWTモジュールでドラッグ&ドロップを実装 モジュール設定ファイル 抽象ドラッグソースクラスと抽象ドロップターゲットクラス マウスリスナー ここのソリューションで説明した内容 ソリューション7 シンプルウインドウ これから学ぶこと フレックステーブルから構築されたウインドウ シンプルウインドウ ポップアップパネルを使用 ポップアップパネルのデフォルトイベント処理をオーバーライド GWTフレックステーブルの使用とそのセルをフォーマット イベントをシンク ウィジェットのDOM要素に対するZインデックスを操作 ポップアップパネルの大きさを変更 望ましくないブラウザ効果を抑制 ウインドウバー 水平パネルのセル内にウィジェットを整列 マウスリスナーとイメージで3-Dボタンをシミュレーション ポップアップパネルを移動 ウインドウバーでの望ましくないブラウザ効果を抑制 ここのソリューションで説明した内容 ソリューション8 フレックステーブル これから学ぶこと フレックステーブルの紹介 扱いやすいフレックステーブル フレックステーブルでの行削除 フレックステーブルのセル編集 フレックステーブルの列の幅を動的に変更 GWTでのイベントリスナーの構築とイベントの発行 ResizableCellPanelウィジェットを構築 フレックステーブル内にResizableCellPanelを組み込む フレックステーブルでデータをめくる ページャウィジェットを使用 ここのソリューションで説明した内容 ソリューション9 ファイルアップロード これから学ぶこと GWTのファイルアップロードウィジェット ユーザインタフェースを作成 JavascriptObjectNotation(JSON)を解析 Apache Commons FileUpload ここのソリューションで説明した内容 ソリューション10 Hibernate統合 これから学ぶこと Hibernate例題アプリケーション サーバ上のHibernate Hibernate設定ファイル POJO Javaクラス Contactマッピングファイル RPCサーブレット実装 Eclipse設定 ここのソリューションで説明した内容 ソリューション11 外部サーバへ配置 これから学ぶこと 外部サーバーのディレクトリ構造 ビルドプロセスを自動化するためにAntを使用 開発と配置 配置されたアプリケーションをデバッグ ここのソリューションで説明した内容 ソリューション12 GWTと既存のコード これから学ぶこと 実在のStruts/GWTハイブリッドアプリケーション 簡単なStrutsアプリケーション Strutsログインアプリケーションのコード JSPページ バッキングビーン、フォームビーン、アクションビーン GWT/Strutsハイブリッドアプリケーション Strutsを組み込むために修正されたAntビルドファイル ハイブリッドアプリケーションのコード GWTウィジェットを設定するためにJSONを使用 既存のコードとGWTウィジェットの組み合わせ HTMLビューとJSPビューをGWTビューで置き換え より根本的なフレームワーク統合 ここのソリューションで説明した内容

Developing with Ext GWT: Enterprise RIA Development (FirstPress)
- 作者: Grant Slender
- 出版社/メーカー: Apress
- 発売日: 2009/05/12
- メディア: ペーパーバック
- クリック: 13回
- この商品を含むブログ (3件) を見る
Google Web ToolkitとExt JSを組み合わせた技術『Ext GWT』。少し前の日記でも書いたけど
という感じだったので、まとまった単位で情報を閲覧、把握出来るものが欲しいな〜とAmazonで探したところこの1冊位しか無い模様。
まぁそんなに厚さも無いし、これを機会に原典、英語の情報を当たってみるのも良いかな〜って感じで購入。国内Amazonで在庫があったので即日手に入りました。
当然ながら全編英語なので読めるかなーと心配だったけど、結構把握出来そうな感じ。設定情報とかが肝だったりするし、文章全編を翻訳・理解出来てる必要はそこまで無いし(出来ればベストだが)。
脳内翻訳しながら、(実践含め)少しずつ読み進めていきたいと思います。
### <目次> ###
Chapter1: Overview of Ext GWT and GWT
About Ext GWT
About GWT
GWT Crash Cource
Summary
Chapter2: Organizing the Environment
The Basic Ingredients
Setting Up Eclipse
Defining User Libraries
Creating an Application
Importing to Eclipse
Adjusting for GXT
My First GXT App
Summary
Chapter3: Widgets, Widgets, Everywhere
The Complete Ext-ended Family
.widget
Component
How Things Are Rendered
Events
Sinking Events
Container
LayoutContainer
ContentPanel
ViewPoint
Window and Dialog
MessageBox
TabPanel and TabItem
Html and HtmlContainer
ProgressBar
Slider
DataList
ListView
.widget.button
Button, ToggleButton, SplitButton
Status
IconButton and ToolButton
.widget.toolbar
.widget.menu
.widget.tips
State Management
Themes-Let's Make It Pretty
Summary
Chapter4: Advanced Widgets and Stuff
Layouts
GWT Panels
Cascading Layouts
Layout Managers
Layout Tips-n-Tricks
CenterLayout
AnchorLayout and AbsoluteLayout
FitLayout and FlowLayout
HBoxLayout and VBoxLayout
ColumnLayout, TableLayout, and TableRowLayout
BorderLayout
FormLayout
Forms
A Form Example
Form's Rich Text Editor
Portal
Drag-n-Drop
XTemplates
Summary
Chapter5: Working With Data
Data, Stores, and Loaders
Models
Stores
Loaders
Using BeanModel Objects
Stores and Loaders
GWT RPC
Summary
Chapter6: A Working Example
myCustomerContacts Application - What's New ?
When Loading
Customer Data
Keeping Data Independent
Layout and Construction
When the Module Loads
Preparing for Services
Building the Main Layout
Building the Grid Panel
Building the Form Panel
Building the Chart Panel
Additional Bits
The Server Code
Summary前述の書籍と含めても結構な額投資した事になるので、あらためて元は取る!と心に誓うのでありました(`・ω・´)キリッ