GUIツールかXMLファイルか

ここしばらくWebLogicやWebSphereを叩くようなエントリを書いたりしていたわけだが,そのような気持ちが湧いたことの理由の1つが「XMLで分かりやすく設定させてくれよ」というものでした.

GUIツールというのは一見、ユーザフレンドリーであるかのように見えて実のところそうではない、むしろXML直接書いたり、書き方の説明を充実させたほうがきっちり理解して設定したい人にはいいのではないかということ.

例えば今日読んでいた「JBoss A Developer's Notebook」にはJAAS関係の説明のところで以下のようなXMLが書かれていた.

<application-policy name="todo">
  <authentication>
    <login-module
        code="org.jboss.security.auth.spi.DatabaseServerLoginModule"
        flag="required">
      <module-option name="dsJndiName">java:/DefaultDS</module-option>
      <module-option name="principalsQuery">
        select passwd from USERS where login=?
      </module-option>
      <module-option name="rolesQuery">
        select role, 'Roles' from USER_ROLES where login=?
      </module-option>
    </login-module>
  </authentication>
</application-policy>

なんかもう,これなんて見ただけで何となく「ああこれとこれはこういう関係なんだ、ほーほー」とか分かってしまう.GUIツールで変な感じのHTMLフォームとかで表示されると何がなんだか凄く分かりにくいのに,こうやってXMLで示されるとなぜかすっと理解できてしまう,そんなところが皆さんにもないでしょうか.

そしてここで説明が1行.

If you use a different database, it's a simple matter to change the name to bind the login module to your database of choice.

こう付け加えられるだけで,"dsJndiName"だけで繋がっている,"dsJndiName"の値を変えれば好きなデータソースにいくらでも変えられる,おーすごい,みたいな感じになる.

XMLは人間が読むための文書ではないですから」

そう言い切ってしまう人がときたまいるが(自分の周りにはいた),自分はそうは思わない.GUIツールよりも,よっぽど直感的に理解しやすい.