参加させていただいた。
場所は秋葉原近くの某研究所さん(名前カードや、注意書きの配布など、キッチリした事前準備に驚きました。ありがとうございました!)でした。
内容は、髪をばっさりと夏仕様にしたひがさんによるJSF(myfaces, s2jsf)のソースコードの追い方講座と、t-wadaさんによるTDDをめぐる混乱について。
### JSF(myfaces, s2jsf) のソースコードの追い方講座
箇条書きで。
* myfacesの実装はところどころアイタタタな面がみられる。
* 処理の起点はfacesservletである。
* jsfのアーキテクチャはWebObjects Frameworkに酷似している。
* 画面の構成要素に対して、動的にidが付与され、idがマッチする画面の構成要素に対して処理が実行される
* リクエスト-レスポンス・ループに関連する状態を管理するクラスはfacescontextである。(WebObjectsの場合、WOContext)
* リクエスト-レスポンス・ループ処理は、いくつかのフェーズに分割して行なわれる。
* WOとの相違点は、validationフェーズが独立して存在すること
* WOの場合、処理を実装する場所は フェーズx{Application, Session, WOComponent}の掛け算分だけあるのに対し、JSFの場合はもうちょっとシンプルな構成になっているみたい。
* JSFは適用領域をWeb/HTML/HTTPに限定していないため、内部のコンポーネントに対して直接???Request, ???Responseを見せない。見せるのはfacesContextのみ。この中にRequest類が入っているようだ。
### “Test” という言葉 (TDD話 導入編) by t-wada
後で書きます。
> 内部のコンポーネントに対して直接???Request, ???Responseを見せない。
この「内部のコンポーネント」っていうところはWOでいうと何に対応してるのでしょう。
WOComponentもcontext経由じゃないとrequest, responseが取れないんだけど、これとは違うものでしょうか。
> 何に対応してる
WOComponentです。
> WOComponentもcontext経由じゃないとrequest, responseが取れないんだけど、これとは違うものでしょうか。
? takeValues…, appendTo… のargsにWORequest, WOResponseがありますよね??
ちょっとお互い認識ズレがあるかも???