「Wicket」の編集履歴(バックアップ)一覧に戻る

Wicket - (2009/04/12 (日) 18:14:41) のソース

*Wicketのすばらしいところ
**Wicket前夜
***Servlet
-HTTPはステートレスなプロトコル。
-Servletはこれを処理するための、状態を持たない手続き。
--オブジェクト指向の利用が限定される。
-状態の管理はSessionを使ってプログラマが行う必要がある。
--これは「ガベージ・コレクタ」を持たない環境における「メモリ管理」そのものだ。
***Struts
-StrutsはServletのプログラミングを改善したが、手続きであるという点は変わらない。
--Servletの持つ上記の欠点は引き継がれている。
--設定ファイルはオブジェクト指向ではない。拡張性も汎用性も再利用性もない。
---修正内容が少しでも複雑になると、奇妙な迂回方法をとらねば対応できなくなる。
---プログラムの修正だけならすぐにすむものを。
**Wicket
-ページをひとつのオブジェクトと考え、状態をWicketが管理する。
--値の変更をバージョン管理する。
--セッションの古いデータをディスクに書き出す。
--リクエストに応じて状態を復元する。
--不要になったデータは消去する。
-動的な動作は全てプログラムで行う。
--設定ファイルはweb.xmlのみ。
--柔軟な設定が可能。
--IDEによるサポートが可能。

*オブジェクト自身が自分のやるべきことを知っている
*チェックボックスの初期値
-CheckBoxなりCheckGroupなりCheckBoxMultipleChoiceなりに初期値を取得するモデルを突っ込んでおけばよい。
-まあ、そうだろう。

*チートシート
**モデル
-Model
-PropertyModel
-ResourceModel
-StringResourceModel
-CompoundPropertyModel
-AbstractReadOnlyModel
-LoadableDetouchableModel
**ラベル
-Label
-MultiLineLabel
**リンク
-Link
-PageLink
-BookmarkablePageLink
-ExternalLink
-ResourceLink
-DownloadLink
-ImageMap
-SubmitLink
**画像
-Image
**繰り返し
-ListView
**フォーム
-Form
-Button
**選択
-DropDownChoice
-ListChoice
-ListMultipleChoice
-CheckBox
-CheckGroup
-CheckBoxMultipleChoice
-Radio
-RadioGroup
-RadioChoice
**テキストフィールド
-TextField
-PasswordTextField
-HiddenField
-TextArea
-RequiredTextField
**コンテナ
-WebMarkupContainer
-Panel
-Fragment
-Border
-FormComponentFeedbackBorder
**ビヘイビア
-AttributeModifier
-SimpleAttributeModifier
-AttributeAppender
-HeaderContributor
**リソース
-WebResource
-ContextRelativeResource
-DynamicWebResource
-BlobImageResource
-RenderdDynamicImageResource
-DefaultButtonImageResource
-BufferedDynamicImageResource
-PackageResource
-CompressedPackageResource
-JavaScriptPackageResource
-ByteArrayResource
-DynamicByteArrayResource
**リソースストリーム
-StringBufferResourceStream
--日本語の扱いに難あり
-StringResourceStream
-TextTemplate
-PackagedTextTemplate
-CssTemplate
-JavaScriptTemplate
-FileResourceStream
-PackageResourceStream
-UrlResourceStream
-WebExternalResourceStream
-XSLTResourceStream
-ZipResourceStream
--サブフォルダがあるとFileNotFoundException

*参考文献

#amazon(4798022217,image,text)
目安箱バナー