Rubyを使ったエンタープライズ・インテグレーション
REST vs. SOAP
過去2〜3年間、Representational Sate Transfer(REST)とSOAPについて、どちらがWebサービスとしてより適切なアプローチであるかという議論が続けられてきました。現在、 Day SoftwareのチーフサイエンティストであるRoy T. Fielding氏のRESTのアーキテクチャスタイルを最初に示した博士論文がWorld Wide Webアーキテクチャをもっともよく解説しているものとして広く知られています。これに対しSOAPは、RPCベースのミドルウェアから生まれてきたもの です。
RESTとSOAPの両方を利用することを考えなければならない現場人たちの間では、いまだに議論が激しく続いています。しかし実際の対応の仕方を見ると、Schmidt氏はいずれかの側に立つことを避けていることがわかります。
本質的には宗教論争とも言えるようなものに巻き込まれるよりは、SOAPとRESTの両方を取り扱う場合のためにRubyの詳細な解説を示していま す。これによってエンタープライズアプリケーションの開発者は両方の実証を見ることができ、場合によってはどちらかを選択できることができるようになるの です。
私の結論としては、「Enterprise Integration with Ruby」はエンタープライズアプリケーション開発者の方々にお薦めできる本だと思います。私はこの本によって、Rubyがエンタープライズでのインテグ レーション戦争の中で強力な力となることは疑わなくなりました。この本では(仮想の花屋をモデルとした)有効な例が示されており、またエンタープライズの インテグレーション・プロジェクトでしばしば見られる典型的な苦労するポイントを明示的に記述してあり、とてもよく書けた本だといえます。
もし皆さんがJavaやC++のミドルウェアによるインテグレーションに強力なバックグラウンドを持っていて、スクリプティングについてはあまり知 識がないのであれば、この本を読むことによって、Rubyのようなダイナミック言語が実現できる簡素化と高い生産性に目を見開くことでしょう。
1. M. Schmidt, Enterprise Integration with Ruby, Pragmatic Bookshelf, 2006.
2. R.T. Fielding, Architectural Styles and the Design of Network-Based Software Architectures, doctoral dissertation, Dept. of Computer Science, Univ. of California, Irvine, 2000.