interface命名にも発想の逆転を

· Java

例えば,何らかの値をセットすることができる,という性格を表現するinterfaceを考えてみる。セットすることができるんだから, public interface SomethingSettable { public void setSomething(int value); } というように,〜Settableという名前にすることが多かった。 「何かをセットできる」というのは,対象クラスを外から見たときの観点と言える。なので,「何かをセットできる性質」というのは,そのクラスの性質の説明と…

Read more →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (10)

· Shale

[前回](http://www.eisbahn.jp/yoichiro/2006/11/jsfajaxuiwithshaleremoting8.html)までの説明で,double-selectコンポーネントのサーバでのレンダリング処理が行われるようになった。DoubleSelectRendererクラスのencodeBegin()メソッドによって,左右2つのselectタグがレンダリングされる。しかし,レンダリングされる内容の中で,いくつかJavaScript関数が登場したが,どれもdoubl…

Read more →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (9)

· Shale

[前回](http://www.eisbahn.jp/yoichiro/2006/11/jsfajaxuiwithshaleremoting7.html)はdouble-selectコンポーネントのレンダリング結果を説明して終わってしまった。今回という今回は,レンダラクラスの説明を行おうと思う。前回紹介したレンダリング結果と対応させながら以降の説明を見ていって欲しい。 JSFコンポーネントをレンダリングする機能を持つクラスは,Rendererクラスを継承して作成する。double-selectコ…

Read more →

JavaScript流オブジェクト指向プログラミング - ITpro

· Java

JavaやCなどのオブジェクト指向言語とは異なるアプローチでオブジェクト指向を実現できるJavaScript。なかなか丁寧な解説が見つからないのだが, 「 [JavaScript流オブジェクト指向プログラミング](http://itpro.nikkeibp.co.jp/article/lecture/20061114/253669/)」 - ITpro は非常にわかりやすかった。プロトタイプ型のオブジェクト指向言語は,スクリプト言語という特性(=サクサク感&柔軟性)にぴったりだ。 ただし, そ…

Read more →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (8)

· Shale

今回は,double-selectコンポーネントをレンダリングするDoubleSelectRendererクラスの解説を行おうと思う。その中で,Shale RemotingのAPIを使用してみる。 [前回紹介したDoubleSelectTagクラス](http://www.eisbahn.jp/yoichiro/2006/11/jsfajaxuiwithshaleremoting6.html)のsetProperties()メソッドによって,JSPに記述されたカスタムタグの属性値がUIコンポー…

Read more →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (7)

· Shale

JSF+Ajax with Shale Remotingと題したエントリだが,やっとJavaコードの紹介を始めるときが来た。今回は,double-selectコンポーネントを構成する2つのクラスの一つ目,カスタムタグハンドラクラスについて解説しようと思う。 JSP実装のJSFコンポーネントを作成する際,それはカスタムタグの形態となるために,タグハンドラクラスを作成する必要がある。JSFでは,以下のどちらかのクラスを継承して作成する。 UIComponentTag - 本体部を持たない場合に使…

Read more →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (6)

· Shale

「 [JSF+AjaxでUIコンポーネント開発 with Shale Remoting (4)](http://www.eisbahn.jp/yoichiro/2006/11/jsfajaxuiwithshaleremoting3.html)」で予告した内容を今回紹介しようと思ったが,あまり概論ばかりでも退屈なので,実際のコードを今回から解説していこうと思う。その中で処理の流れを見ていけばいいかな,と。 JSFコンポーネントのJSP実装はカスタムタグの形態をとるため,まずはタグライブラリディスク…

Read more →

デフォルトエンコーディングは廃止すべき!?

· Java

Javaでの開発が当たり前になり,Javaプログラマの数も豊富になってきた。しかし,それもここ2,3年のこと。つまり,大多数のJavaプログラマのJava経験年数も2,3年,長くても5,6年といったところだろう。このことは,多くのJavaプログラマがWebアプリケーションしか書いたことがないことも表している。 JDK1.0.2やJDK1.1を身をもって体験している「ベテラン(僕を含む)」が常識と思うことも,現在の多くのJavaプログラマは持ち合わせていない。「全く今の若者は・・・」とつい言ってし…

Read more →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (4)

· Shale

「 [JSF+AjaxでUIコンポーネント開発 with Shale Remoting (3)](http://www.eisbahn.jp/yoichiro/2006/11/jsfajaxuiwithshaleremoting2.html)」で予告した通り,今回はdouble-selectコンポーネントの構成について紹介する。それを通じて,Shale Remotingが便利だと思う根本理由を説明したいと思う。 JSFは,コンポーネント指向であることは何度も本ブログで述べていることだが,ではJS…

Read more →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (5)

· Shale

「 [JSF+AjaxでUIコンポーネント開発 with Shale Remoting (4)](http://www.eisbahn.jp/yoichiro/2006/11/jsfajaxuiwithshaleremoting3.html)」で予告した内容を今回は置いておいて,大事なことを書くのを忘れていたので,今回はそれを先に取り上げる。 double-selectコンポーネントのJAR内の構成など,突然実装寄りな話に前回は終始してしまったが,肝心のdouble-selectコンポーネントを…

Read more →