DATE : 2007/05/19 (Sat)
「e-messe kanazawa 2007」に行ってきました。「ユビキタス」をテーマに行われたデジタル総合展です。
様々な規模の企業が新製品やサービスを展示していて非常に良い刺激になりました。
( ^ω^)未来的な生活に一歩近づく展示がある一方で、目の付け所がすごい製品もあって楽しめました。
一番面白いと感じたのは、角谷商店の「光る動くポスター」でした(2007/05/20現在、ウェブサイトに表記はありません)。ポスターに発光体や電極が挟みこんであり、ポスターが光ります。光る部分を時間とともに変えることで、ポスターの中の物体が動いているように見せているようです。
発光体を挟むことで光らせるため、ポスターの厚みは1mm以下になっています。蛍光灯と比べて、消費電力はとても小さいそうです。
( ^ω^)これが紙を中心に扱ってきた会社から生まれたと言う点がまた面白いですね。自分の得意な範囲から一歩踏み出すことで新しいものが生まれるという教えをいただいたような気がします。
DATE : 2007/05/13 (Sun)
「推計学のすすめ 決定と計画の科学」(佐藤信、講談社、1968年)を読みました。
推計学、主に仮説検定・確率分布・相関・実験計画法を解説した一般向けの本です。
統計学を学んだことはあるのですが、どのような時にどの手法を適用すべきかいまひとつ理解できていなかった私にとって、これは非常に分かりやすい本でした。数式も細かいものは出てきません。最近は細かい計算は全て PC がやってくれるので、こういった根底部分を解説した本は逆に貴重です。
また、真の乱数と直感で作られた乱数との食い違いを述べられているのは興味深い点でした。乱数というイメージからは、適当な数字が並んだ数列が思い浮かびます。ところが、無意識のうちに同じ数字が続く可能性を排除しています。例えば、33……と同じ数字が続くと、別の数字を差し込みたくなってきます。このように乱数を直感で生成すると、恣意性が紛れ込み、数列に特定のパターンが出てきてしまいます。そのため、本書では直感から生成された乱数の危険性も説いています。
(;^ω^)最近は PC 上の擬似乱数が使えるので、(真の乱数を必要としない限りは)乱数表もサイコロも必要ありません。しかし、ちょっと面倒臭い時にはつい頭の中で適当な乱数を作って使ってしまうことがあるので、今後はきちんと擬似乱数を使おうと思いました。
DATE : 2007/05/11 (Fri)
(;^ω^)しばらく JSF を使ってきたのですが、今日はじめて Validator を複数重ねられることに気付きました。
例えば、入力形式(数字の間にハイフンが入っているなど)を検証する formatValidator とそれが今回はじめて入力されたものかどうかを検証する uniqueValidator を用意したとします。
すると、data の value プロパティに前述の検証を行ってから入力値を格納するテキストフィールドは次のように書けます。
<h:inputText value="#{data.value}"> <f:validator validatorId="formatValidator" /> <f:validator validatorId="uniqueValidator" /> </h:inputText>
JSF 1.2 の仕様書にも次のように書いてありました。(「JavaServer Faces Specification Version 1.2 Final Draft」p.3-34 から引用)
JSF supports a mechanism for registering zero or more validators on each EditableValueHolder component in the component tree.
javax.faces.component.EditableValueHolder は、編集可能な値を保持するコンポーネントが実装しているインタフェースです。javax.faces.component.html.HTMLInputText などの javax.faces.component.UIInput が実装しています。そのため、仕様上、入力用の UI コンポーネントは0から複数の Validator を使用できることになるわけです。
(;^ω^)私の見た入門書やサンプルコードには Validator を1つしか使用しないものしかなかったため、頭の中に Validator は1つという図式ができあがっていたようです。
参考文献
DATE : 2007/05/10 (Thu)
企画が載った新聞に、今度は私自身が載りました。
今日付けの人物欄に、ちょっと大きな写真付きで載っています。
企画はともかく、私自身が載るのは結構恥ずかしいですね。もっとも、企画が載った日からちょうど2週間たっているので、記事の半分以上は企画の説明になっていますが。
DATE : 2007/05/09 (Wed)
JSF などの JSP の動作確認をしていると、特定の部分だけコメントアウトしたくなることがあります。例えば、一時的に Managed Bean のプロパティを削除した場合などです。
JSP の標準構文(「<% ... %>」形式の構文)を使用している場合、つい以下のようにコメントアウトしがちです。
(;^ω^)何度もひっかかりました。
<!-- <h:outputText value="#{bean.value}" /> -->
しかしこのようにコメントアウトした場合、コメントアウトした(つもりの)部分でエラーが発生することがあります。特に、初めに挙げたような、bean の value プロパティを削除した場合などは確実にエラーになります。
これは、コメントアウトしたつもりの部分を JSP コンテナがコメントと認識していないためです。
実は、JSP の標準構文には「<%-- ... --%>」という形式の標準構文用コメント文が用意されています。このコメント文を使用すると、JSP コンテナがコメント部分をしっかり無視してくれます。
例えば、上の例は次のようになります。
<%-- <h:outputText value="#{bean.value}" /> --%>
JSP コンテナが処理を無視するため、クライアント側からコメントアウト部分は見えません。
なお、JSP を XML 構文で記述している場合は、「<!-- ... -->」のコメント文を使用します。