BT

角括弧がコントラクトファースト開発に関係する?

| 作者: Dilip Krishnan フォローする 0 人のフォロワー , 翻訳者 尾崎 義尚 フォローする 0 人のフォロワー 投稿日 2009年7月20日. 推定読書時間: 2 分 |

原文(投稿日:2009/7/9)へのリンク

ThinktectureのChristian Weyer氏は、WCFを使ったWebサービスで、コントラクトファースト開発を可能にするVisual StudioアドインであるWSCF.blueのリリースを発表した。

私が最初にコントラクトファーストのWebサービスツールを構築してから長い時間が過ぎました...
WSCFと呼ばれるこのツール(コマンドラインユーティリティとシンプルなVisual Studioアドインの両方がある)は、ASMXプラットフォームを対象にしていました。

コントラクトファースト開発アイディアには長い歴史がある。コントラクトファーストは、Webサービスリクエストの形式でサービスから流れるメッセージの標準的な表現の必要性から発生している。WSDLとXSDベースのツール、SchemaとWSDLベースの表現などもっとも一般的な言語をサポートし、これらのメッセージ「コントラクト」を開始地点にすることは、ほぼ間違えなく相互運用を解決するためのアプローチである

コントラクトファースト開発は、オブジェクトとXMLのインピーダンスミスマッチに対処するスタイルである。XML Schema言語は、リッチな表現フォーマットである。 コントラクトのモデルを容易にし、シリアライゼーションと相互運用性の問題に対する配慮を軽減する。これには次のようなものが含まれる。

  • XSD型拡張と制約などへのスキーマ言語のコントラクトにマップできないこと
  • マッピングができないか、少なくても効率的に ジェネリックリストやハッシュマップなどのオブジェクト型とスキーマ型のマップができないこと
  • XMLで、親/子の関係があるとき、親が保持している子の参照と子が参照し返している親の参照がオブジェクトグラフで事実上表現できないこと

このアプローチによるアドバンテージには、次のようなものがある。

  • 言語に依存しないコントラクトを定義して、相互運用性を促進する。サービスの設計者は、WS-I相互運用性の標準を意識する。
  • XSDとWSDLの企業をまたぐコントラクト定義の再利用を促進する。
  • サービスのバージョン管理を可能にし、結果として管理に適している。

WCSF.blueは、オープンソースプロジェクトとしてCodePlexでホストされているVisual Studio 2008のアドインである。ツールでできることには次のものがある。

  • WSDL Wizardは、開発者が1つ以上のXSDからWSDLを作成することを可能にする。
  • DataContractジェネレータ (XSD.exe、XSDObjectGen.exe、Svcutil.exeに似たもの)は、XSD型と同等の.NETコードを生成する。
  • サービス/エンドポイント スタブ(SVC)ジェネレータ
  • クライアントプロキシジェネレータ

このツールは、まだ既知の問題が存在している。ベータから製品版になるときには解消されることに期待したい。またこのツールは、 バージョン0.7からWSCFのウォークスルーを持っている。クラシックアドインは、いまだに多くの部分と関係を持つ。WCFがコードの中のコントラクトをサポートし、角括弧なし、XSDかWSDLを要求することを考えれば、WSDLとXSDを使ったメッセージのモデリングとサービスコントラクトにフォーカスしたツールがどれだけ重要だろうか?

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT