Javaの落とし穴
Michael C Daconta J.Paul Keller Eric Monk
2000年の本なので、もうかなり古いです。
が、この本から多くのことを学んだので是非とも紹介します。
第16項リフレクション、インタフェイス、および無名クラスによるメソッドディスパッチ
C++の関数ポインタが活躍する場面を、Javaでどう表現するのかを説明しています。
型チェックが行えるという意味でインタフェイスを使うのよい習慣だと思います。Commandパターン、UIのプログラミングで多用される無名クラスを使った方法等々、てんこもりです。
最後に、タイプセーフ、コンパイル時チェック、単純性が、柔軟性により優先するとしめくくられています。
いまざっと読み直して思ったのは、スクリプト系言語の柔軟性は好ましいのですが、やはりポインタがなく型が重視されているJava言語のもつよさもあるなぁと思った次第。
第5部 GUI表現 第6部 GUIの制御
いまみても、最後の最後でJavaでGUIする場合に必要となるノウハウがぎっしりです。
第49項 JNIコールをインタフェイスにカプセル化する
現在、Javaでできないことはそんなにないぁというのが自分の感想です。
もし無理だな思うなら、あきらめる前に、ネイティブの力を借りるのもありだと思います。ネィティブコールの方法を知っているだけで、幅がひろがります。ただし、《どこでも走る》が犠牲になる可能性があります。
直接ネィテブコールしなくとも、現在ならEclipseのSWTを経由することができます。WIN32でしたら、かなりの関数がラップされて用意されています。
時代はかわってJavaにクロージャが導入されるかどうかの議論が行われいる昨今です。言語も進化していきます。
ところでJavaOS,Javaチップの可能性はもうないのでしょうかね?
0 件のコメント:
コメントを投稿