POI

日経ソフトウェアを何気なく買ってみたら付録にJava学習ブックがついていた。ので何気なく久々にJava再勉強中。
久々に書く宣言時の初期化、 = new ( ... );の形式はかなりめんどくさい。静的型付けである以上、この書き方は精密で正んだろうけれど、なぜC++のように略記法が出てこなかったんだろう? eclipse無いと厳しい(逆に言うとeclipseあれば何とかなってしまう)。ほかにも、LineNumberReader()て必要なシーンあったのかな? 手で書いても知れてるし、その方がわかりやすそうに思えるんだけど・・・とか、この手の集約でできてる奴、なんで継承で作らなかったのだろう?(これは使い回しが効くようにだろうけど) とか色々とナゼ?な疑問が溢れかえり始めているところ。つまり、目下Java脳を絶賛形成中。
改めてやってみた感想は、やっぱりJavaって思想的に偏っている、って気がする。これを当たり前と思い込んだら危険、、、って、どんな言語でもオンリーが危険なのは当たり前か。
記事内容自体は「日常作業をJavaで自動化してラクをしよう」という、それスクリプト言語で、とかいうDisがきそうな企画なんだけど、その項目のうち3項目がExcel, Word絡みで Apache POIというのを使ってる。

  1. ファイル
  2. ディレクト
  3. Excel (POI)
  4. Excel (POI)
  5. Word (POI)
  6. XML
  7. ネット
  8. PDF
  9. 圧縮ファイル
  10. スクリプト
  11. オブジェクト指向の基礎
  12. 実働アプリ作成(家計簿ツール)

面白い名前だなあ。POIってなんだか知らなかったんだけど(最初に連想したのは電話会社のあれ)、

POI は Poor Obfuscation Implementation (不十分で曖昧な実装) を表しています。どうして私達がこのような軽蔑的な言葉から命名したのでしょうか?Microsoft OLE 2 複合ドキュメント形式は、不十分なものだと思われるものだからです。Microsoft OLE 2 複合ドキュメント形式は、古いDOS FATファイルシステムに本質的によく似て設計された圧縮形式です。Redmond(訳注:米 Microsoftの本拠地のある場所、つまり、Microsoftの事を指します) は、tar や gzip、zip、arcを使う代わりに、独自の圧縮形式を開発することを選択しました。その圧縮形式は、標準暗号技術や圧縮技術をあまり使っておらず、(アーカイブファイルの中への)追加が容易ではなく、そして、断片化しやすいものとなってしまいました。

Poiは、ハワイの珍味の事でもあります。 Merriam Webster's dictionaryによれば: "ハワイ料理で、タロイモの根を煮てすりつぶし捏ねてペースト状にしたものであり、発酵させた時の酸っぱさが益々良いです" - 何か、このファイル形式に奇妙にも当てはまっているように思えてなりません。(訳注:ちなみに、この珍味の味は、きわめて不味いそうですが、栄養価が高く、これを食べつづけているハワイ人は--巨人--になるそうです。この点でも...、この名前がピタリと当てはまるのかも知れません....)

とのこと・・・ははは。
結構、便利。しかし、VBScriptでやるのに対するメリットってあんまり見えないなあ。JavaになれすぎていてVBScriptなんて鳥肌が立つヨ!もう、って場合はそっちの方が良いということかな。