WCFとか言い出す前に(言い出される前に)読んでおくべき本

僕は生粋のプログラマではなくて、所詮システム設計屋なので、WCFの勉強を深めるたびに便利~という気持ちは全然こう持ち上がってこなく、むしろ背筋が寒くなります。何故かというと、その実装が簡単すぎるからです。実装が簡単だと、その技術の中身を知ることなしにそれを使って開発し、システムの根幹として使用することが簡単だと錯覚するバカ経験の少ない開発者やシステム設計者が出てきて、システム設計的には正しくない実装がされたために動かないプログラムやシステムが量産される様が想像できてしまうからです。こんなのは経験があれば、あーDCOM/CORBAの復活だと思うわけですが、最近は皆さん忘れているか、あえて思い出そうとしていないか、それとも脳天気を装っているかのようです。もっとも初めてのプログラミングがEclips 上でJavaなんて最近の若い人には遙か昔の話ですね。

WCFを使ってXML WEB Serviceのアプリケーションを作って、システム開発するのは、本当に簡単です。わずか十数行書けば、読むと眠くなるWS-*の仕様書通りにアプリが組み上がります。ただそれでわーいなのではなくて、WCFの実装がここまで極端に簡単にできるようになっているのは、SOAに基づいたシステム設計というより分散システム設計が大変複雑で、難しくて、考えることもいっぱいあって、コーディングになんて時間がかけられないから、マイクロソフトが簡単にしてくれたということを忘れてしまってはいけません。

したがって本当に時間をかけるべきところは分散システム設計であり、それは今までのDCOMやCORBAのような分散オブジェクト技術でのシステム開発や WSEでのWeb Service開発と何ら代わりがないのです。だからあえて書けば分散システムの基本的な知識もなしにWCFなんて使うべきじゃありません。ただ単にネットワーク越しにアプリケーション間でデータのやりとりをしたいだけであれば、別の方法を考えるべきです。基本はソケットでもいいでしょうし、次バージョンの.NET FXでサポートされる名前付きパイプでもいいかもしれません。それでもネットワーク越しにデータのやりとりがあるなら、それはすでに分散処理システムなのであり、その設計には細心の注意が必要なのです。

前置きが長くなりましたが、分散処理、分散システムを理解するためにいくつか私の読んできた本を紹介したいと思います。

図解でわかる分散オブジェクト技術のすべて―ネットワーク&システム構築
図解でわかる分散オブジェクト技術のすべて―ネットワーク&システム構築 小泉 修

日本実業出版社 2001-10
売り上げランキング : 57423

おすすめ平均 star
star分散オブジェクト技術の基本書
starわかりやすい本です
star用語が的確

Amazonで詳しく見る by G-Tools

タイトルと表紙の装丁、そして価格ではだまされてはいけない本です。分散オブジェクトに関する一通りの説明がきちんとなされており、何よりわかりやすいので、最初に手に取る本としては最高の本です。正直もう絶版じゃないかと思っていたのですが、まだ入手できるようなので、これから分散システムについて学習おすすめて行こうという人は手にしておいた方がいいです。ただ内容は何せ2001年の本なので最新の話はないですが、過去の技術について学んでおくことは今使われている技術の理解の妨げには全くならず、かえってその理解を加速してくれるはずです。

分散システム―原理とパラダイム
分散システム―原理とパラダイム アンドリュー・S. タネンバウム マールテン・ファン スティーン Andrew S. Tanenbaum

ピアソンエデュケーション 2003-10
売り上げランキング : 222292

おすすめ平均 star
star分散システム/ミドルウェアを包括的に理解するのに最高のテキスト
star分散システムの数少ない最新技術の分かりやすい講義

Amazonで詳しく見る by G-Tools

何か一冊だけ読むとしたら間違いなくこの本です。分散システムについて学ぶには最高のテキストです。とにかく最低でもこれは読みましょう。もともと大学院・大学生向けの教科書なので眠くなっちゃいますし、枕にちょうどいい厚みですが、くじけずに読んでいきましょう。

詳説ビジネスプロセスモデリング―SOAベストプラクティス
詳説ビジネスプロセスモデリング―SOAベストプラクティス マイケル ハーベイ Michael Havey 長瀬 嘉秀

オライリージャパン 2006-06-01
売り上げランキング : 90186

おすすめ平均 star
starBPEL技術を体験するのには最適
starビジネスアナリスト向けにはちっと

Amazonで詳しく見る by G-Tools

SOAに関する書籍は正直これって言うのがないのですが、とりあえずこれをあげておきます。SOAの考え方もそうですし、WS-*の仕様についても書籍化される頃には情報が遅かったりすることもあるので、この辺は適宜NET上のドキュメントやBlogもチェックしておくべきでしょう。可能ならアメリカのTechEdでのIndigo(WCFの開発コードネーム)やWSEのセッションのWEBキャストを捜して、それを見ておくと良いと思います。

2 thoughts on “WCFとか言い出す前に(言い出される前に)読んでおくべき本”

  1. 難しいことは難しくしておくべきかもしれない

    Matzにっき(2007-06-04) :RubyよりPHPを好む初心者 本当…

  2. 書籍:図解でわかる分散オブジェクト技術のすべて―ネットワーク&システム構築

    書籍:図解でわかる分散オブジェクト技術のすべて―ネットワーク&システム構築

コメントを残す