<?xml version="1.0" encoding="UTF-8" ?>
<entry
	xmlns="http://www.w3.org/2005/Atom"
	xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"
	xml:lang="ja-JP"
>
	<title>デブサミ2008 13-D-5: 次世代ウェブフレームワークの幕開け～ステートフルはじめました/君が僕を望むなら僕は君を忘れない～</title>
	<id>tag:txqz.net,2008-02-13:blog/2008/02/13/1626</id>
	<link rel="self" href="http://txqz.net/blog/2008/02/13/1626.atom"/>
	<link rel="alternate" type="application/rss+xml" href="http://txqz.net/blog/2008/02/13/1626.rdf"/>
	<link rel="alternate" type="application/xhtml+xml" href="http://txqz.net/blog/2008/02/13/1626.xhtml"/>
	<link rel="alternate" type="text/html" href="http://txqz.net/blog/2008/02/13/1626.html"/>
	<link rel="contents" href="http://txqz.net/blog/2008/02/13/.atom" title="2008年2月13日"/>
	<link rel="first" href="http://txqz.net/blog/2001/08/04/0001.atom" title="地球空冷化"/>
	<link rel="prev" href="http://txqz.net/blog/2008/02/13/1515.atom" title="デブサミライブ: Ruby と Adobe AIRで実現、メッセージングアプリ構築法"/>
	<link rel="next" href="http://txqz.net/blog/2008/02/13/1852.atom" title="デブサミ2008 13-D-7: JavaScript Tips &amp; Technique"/>
	<link rel="last" href="http://txqz.net/blog/2008/12/19/2152.atom" title="浜松市街地を通り抜けて、ムーンライトながら～の思い出"/>
	<author>
		<name>陽坂智佐</name>
		<email>spambasket@txqz.net</email>
	</author>
	<content type="xhtml">
		<div xmlns="http://www.w3.org/1999/xhtml">
<p><a href="http://yoshiori.org/blog/" title="Yoshioriの日記">Yoshioriさん</a>のターン。お姉さんが「僕が君を」のあたりを読み上げるときに班笑いになっていたのが面白かった。ステートフルのお話だけどRESTと競合したり敵対するものじゃないよというお断りから。というか受付で資料を受け取って驚いた。トナーがー</p>
<p>httpプロトコルはステートレス。COOKIEとかGETパラメータとかPOSTパラメータとか他のヘッダとかを使って擬似的にステートフルにできている。あとsessionにnullgwdocomoと書くと端末情報を入手できるのらしい。</p>
<p>ステートレスだけで処理しようとすると問題が起こる。[入力]→[確認]→[完了]と画面が推移するとき、ユーザが入力した情報をhiddenパラメータなどでクライアントに返してしまうと、確認の前と完了の前とで2回データチェックする必要が出てくる。</p>
<p>HTTPプロトコルがステートレスなのにアプリがステートフルを要求している。いまさらHTTPプロトコルは変えようがない。そこのギャップをフレームワークがうまく解決してくれる。</p>
<p>クライアントに値を返すとバリデートが2回必要になるとか、戻るボタン対策やダブルサブミット対策やマルチウィンドウ対策やF5対策などの問題をフレームワーク側で引き受けてくれるので、ビジネスロジックに注力できるようになる。逆にデメリットとしては学習コストがかかったり、選択肢が少なかったり、session乱発でメモリ使いまくりで負荷分散が大変だったりする。でもきょうび32ギガメモリとかフツーなので平気ですよね<span class="face">^^</span></p>
<p>次にJBoss Seamの話。JBoss SeamはJBossによるはじめてのフレームワーク。SeamはJSF(VとC)とEJB3(M)をつなぐGlue(糊)の役割。<a href="http://flickr.com/photos/nekop/2110953958/" title="Japan JBug on Flickr - Photo Sharing!">みんな大好きぎゃびんきんぐ</a>。</p>
<p>そしてWicketの話。Swingのようなコーディングができて良い感じ。VとC。コンポーネント指向。HTMLとJavaだけで完結。XML使わないの最高。書いてると分かりやすい。</p>
<p>さてこれらのフレームワークに移行すべきだろうか。まずステートフルフレームワークの存在を認識してほしい。これらのフレームワークはかれた技術の集合であるRoRとは対極にあるものだ。ステートフルフレームワークを<em>抽象的に</em>理解することが大事。「具体的なこと」は本質を表していないことが多い。「すごい速い馬が欲しい」と顧客に言われたら車を用意するのがエンジニア。本質は「速く移動すること」だから。</p>
<p>最後のメッセージがとても心に残った。「みなさん発表しましょう! 間違えはマイナスにならない。文句よりどうしたいかを言うようにしよう。」ブログでもjava-jaや1000speakersなどのカンファレンスでも。そして「彼らを何とかする」</p>
		</div>
	</content>
	<category term="Java"/>
	<category term="デブサミ"/>
	<category term="デブサミ2008"/>
	<category term="フレームワーク"/>
	<trackback:ping>http://txqz.net/blog/2008/02/13/1626/tb</trackback:ping>
	<published>2008-02-16T16:40:44+09:00</published>
	<updated>2008-02-16T16:40:44+09:00</updated>
	<rights>Attribution-Noncommercial-Share Alike 3.0 Unported</rights>
</entry>