IMO、SOAPは契約タイプのメッセージングアーキテクトとして作成された標準です。メッセージを渡すときには、この「契約」を使用するだけです。特定の技術を採用していないほど一般的でした。
RESTはHTTPを取り入れた実際の方法であり、GET、POST、PUT、DELETEを最大限活用する方法です。
私は、どちらかというともう一方の方が優れているとは思いません。実際には、仕事に適したツールを使用しています。私はWebベースのアプリケーションとWebベースではないことを区別しません。 SOAPまたはRESTは両方に有益な可能性があるためです。
ここに私が最初に答えられるいくつかの質問があります:
1)私のターゲットクライアントは誰ですか? Microsoft Workshop Client、Java、PHPタイプ。
2)どのようなタイプの(より良い用語の欠如)「エンドポイント」は私のApiに公開したいのですか? (JSON、XML、Ajax、POXなど)
3)クライアントはこのAPIをどのように使用しますか?彼らはすでにSOAPに基づいたクライアントを持っていますか?そうであれば、SOAPは道のりです。
4)RESTはあなたのURLデザインを考え、クライアントがデータをマッシュアップして必要なものを構築できるようにします。だからあなたはそれがあなたが望むものだと思うならば。 RESTは道のりです。
5)RESTはHTTPで "GET"を使用します。これにより、クライアントは結果をキャッシュできます。 "条件付きGETは、それが呼び出されたものです。大きなオブジェクトをキャッシュすることができます。最後の更新がキャッシュされているものと一致する場合は、ヘッダ(小)を介してサーバに問い合わせます。
とにかく、より良いデータが得られますので、より良い決定を下すことができます。それ以外はすべて失敗しますが、2つのタイプのサービス(さまざまな方法論)と1つのコードベース(両方とも難しいことはありますが難しくありません)に対処する必要があります。
個人的には、私は1つを選択し、次に他のものが必要な場合は、そのブリッジを焼いてそれに対する技術的負債を支払う。
ポイント2では、REST APIにこれらのエンドポイントが含まれていないことは間違いありません。たとえば、あなたは削除することができます:http://www.salesforce.com/us/developer/docs/api_rest/Content/dome_get_deleted.htm – joshdick