2

私は現在、Web サービスを扱うプレゼンテーションを行っています。

WSDL+XSD ファーストアプローチを使用してサービスを作成しました。このアプローチでは、最初に (ツールを使用して) XSD スキーマと WSDL を作成し、相互運用のために .NET と Java クラスの両方にコンパイルしました。

このアプローチを採用した理由を説明したいと思います。OOP に準拠しており (最初にインターフェイスを定義してから実装し、その逆ではありません)、相互運用性の制約をより細かく制御できると述べました。また、名前空間を明示的に定義して、アプリケーション間で XSD を再利用することができます

それどころか、今日でも多くの人が IDE でコードを実装し、そこから WSDL を生成することを好みます。問題は、なぜですか?

4

5 に答える 5

1

どちらのスタイルの開発にも長所と短所がありますが、あなたが言うように、コントラクトラストが初心者にとってより簡単で速いという理由だけで使用されるとは思いませんが、主にツールとフレームワークが進化するにつれて、WSDL はすぐに配管コード、引用:

[...] アプリケーションと下位層の間を橋渡しする舞台裏の低レベル コード。そのようなもののコーディングはかなり退屈で反復的であることがよくありますが、システムを機能させるためには必要です。

退屈で反復的なコードを書きたいと思う人はいません。特に、それを行うためのツールやフレームワークがたくさんある場合はなおさらです。SOAP、WSDL、または XSD を理解する必要さえない場合、それは一部の人にとってはさらに優れています...または「魔法」と言うべきです...しかし、それは別の議論です:)。

于 2012-07-23T21:02:49.400 に答える
1

私は同意しません。開発の容易さではなく、契約の表現に関係していると思います。

そして、WSDL は .xsd から生成されるべきだと思います。

Spring Web サービス ページには、 「コントラクト ファースト」の Web サービスに関する素晴らしい議論があります。それを読んで、あなたの考えを見てください。

于 2012-07-20T20:36:37.397 に答える
0

私の自己回答が唯一の答えかどうかはわかりませんが、それは私が知っていることです

初心者の開発者にとってより簡単で迅速なため

単純に、人々は新しい言語を学ぶのが好きというわけではありませんが、自分の製品が別のプラットフォームのクライアントで動作しない場合でも、習得した言語を使用することを好みます。

于 2012-07-20T20:27:33.133 に答える
0

私が Web サービスを作成するとき (Web サービス システムが組み込まれている JBoss を主に使用します)、一般的な意味で最初に対話を定義しますが、XML ではなく、XML を自分で書くのは特に好きではありません。それは醜い、冗長な言語です。そのため、応答とパラメーターを Java オブジェクトとしてマッピングし、適切に注釈を付けます。アプリケーションをデプロイすると、XML を記述する必要なく、魔法のように Web サービスを利用できます。WSDL と XSD はやや冗長であり、JBoss が生成するものは、私が自分で作成する必要があったものよりも優れているわけではありません。間違いなく、多くの時間を節約できます。その時点で必ずしもサービスを実装する必要はなく、応答と入力データ構造だけを実装する必要があります。

于 2012-07-20T20:37:43.843 に答える