2004年01月04日
川俣晶の縁側ソフトウェア技術雑記total 2374 count

ソフト冒険記・Relaxer編

Written By: 川俣 晶連絡先

 ちょっと理由があって、Relaxerの動作を確認したくなり、最新版(1.0)を入れてみました。

楽になったインストール §

 昔のJDKにはXMLパーサも無くて、いちいちパーサを別途用意する必要があったのですが。今は、そんなことが無くなったようで、とても楽になりました。

 単に、JDKが入った環境にRelaxerをインストールするだけで、すぐ動くようになりました。

 っていうか、そもそもJavaのXML対応は遅すぎ。いちいち、コロコロファイルのバージョンが変わるオープンソースのXMLパーサを指示して、これをインストールして下さい、と言うのが面倒だからJavaでプログラムを書きたくなかった、という側面は確かにあります。

 まあ、逆に言えば、そういう面倒が解消されたので、Javaで書くための障害が1つ消えたとも言えますね。

時代は変わっている §

 昔のRelaxのサンプルスキーマを出してきて通したらエラーになりました。かなり仕様変更が進んでいる感じですね。

 というわけで、Relaxer同梱のRELAX NGのサンプルスキーマを通したら、あっさりJavaソースが生成されました。

 昔、Relaxerを試用した時と比較して、かなりラクチン度アップという感じです。普通のプログラマにもRelaxerファンが増えている理由が分かります。

Relaxerでコンポーネント §

 とりあえず、RELAX NGソースからJavaソースを生成することはできたので、ざっとドキュメントを見ていると。

 Relaxer Component Compilerだの、Relaxer Component Definition Language (RCDL)だのといったキーワードが見えます。Relaxerでコンポーネントを定義してしまい、その定義からソースコードを生成してしまうわけですね。注意してみていないうちに、面白い機能が増えているようで。

 意味はまったく理解していませんが、RCDLのサンプルコードを以下に転載してみます。

<?xml version="1.0"?>

<component xmlns="http://www.relaxer.org/xmlns/cdl"

           namespace="http://www.example.com/hello" name="hello">

  <interface namespace="http://www.example.com/hello" name="hello">

    <operation name="greeting">

      <in name="message" type="string"/>

      <out name="result" type="string"/>

    </operation>

  </interface>

</component>

 これは、helloというコンポーネントには、greetingという操作(operation)があって、それはmessageというstring型の入力をもらって、resultというstring型の出力を持つということでしょうね。

 これは、コンポーネントをソースコードよりも1段階抽象度の高いレイヤーで定義してしまうという感じでしょうか。UMLやモデリングとの相性が良さそうですね。

 これが本当に役に立つのかどうかは全く分かりませんが(使ってもいないし)、ただ1つだけ確かなことは、「ワクワクした」ということです。

どうでも良い余談の感想 §

 インストーラのインストール先デフォルトディレクトリが、C:\usr\local\lib\relaxerっていうのは、あまりに中途半端。c:と言っている以上はWindowsを意識しているはずですが、その下はUNIX風。

 更に、JDKはj2sdk1.4.1_01みたいな自分の世界をルートディレクトリにデフォルトで掘ろうとするし。

 Windowsの標準に沿ったソフトは、もちろんProgram Filesディレクトリの下へ。

 ソフトごとに、流儀の違うディレクトリレイアウトの下に入って行こうとする混乱は美しくないですね。

 少なくとも、こういう混乱は、(MSのJavaは許容しても)SunのJavaをインストールしたくない理由の1つです。

Facebook

キーワード【 川俣晶の縁側ソフトウェア技術雑記
【技術雑記】の次のコンテンツ
2004年
01月
04日
C#において、メソッド等のデフォルトがvirtualではないことのデメリット
3days 0 count
total 8010 count
【技術雑記】の前のコンテンツ
2003年
12月
26日
年忘れスペシャル・プログラム言語ミーハーが激白するJava言語仕様の魅力
3days 0 count
total 2934 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

http://mag.autumn.org/tb.aspx/20040104111400
サイトの表紙【技術雑記】の表紙【技術雑記】のコンテンツ全リスト 【技術雑記】の入手全リスト 【技術雑記】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.