J2SE 1.4.2: Bug Fixes and Upgradesが公表されていたのでツラツラと読んでいたのだけど、さらっとActive Xのサポートが加わったよんとか書いてあったりする。うーむ、SUNもとうとうSWTに嫉妬を持ち始めたか。個人的にはSwing捨ててSWTに乗り換えたい気分だが。でも、結局のところ「users should notice a 30% improvement in startup time for non-graphical applications」のところが一番重要だったりする。
そういえば、最近会社の研修でJBuilderを使ったのだけど、Swingで作られてるくせに結構普通に使えてしまったりして割と驚く(まあ、CPUがPentium4 1.8GHzということもあるが)。今やWebアプリといえばJavaがスタンダードという時代だし(業務以外でプログラムを書いている人には実感がないだろうけど)、Java用のmakeツールとして作られたAntがApacheのトッププロジェクトになったりとC++とかDirect Xとかが話題になっているのをよそにほそぼそとJavaプログラミングをしていたのがたった4年前とはとても思えない。



Webアプリではどうしてもユーザが入力した内容の検証という作業がどうしても必要となるが、多数の文字コード、多種多様なの文字の種類が混在するインターネットの海の中でそのような処理を記述するのは非常に難しい……ということを最近実感したのだがJavaが大流行しているわりにはどこにもその話題が触れられていなかったりする。この状況への説明としては「プロなんだからそこらへんノウハウがあるんだよ」というものと「実は穴だらけの処理しかしていない」というものがあるが、想像するに実際は後者に違いないと確信している。
私なりに調べたりした結果、このような入力判定の処理をするにはJava標準ライブラリを使うだけでは十分でなく、IBMが作ったICU4Jを使わなければならないという結論に至った(このライブラリを使わないと大変な処理を自分で書かなくてはならないし、正しい国際化対応が記述できるかどうかはあやしいものだ)。それにも関わらず、Googleで日本のページを検索するとたったの14件しかひっかからず、そのほとんどがIBM自体のページやリンクだけだったりするのである。まあ、世の中そんなもんだよねという気はするが……。