私はWCFに関する本でこの行に出くわしました:
...そしてCOMコンポーネント(C++やVisualBasicなど)の記述に使用される言語は、せいぜいオブジェクト指向でしたが、コンポーネント指向ではありませんでした...
2つの違いは何ですか?
私の意見/理解はおそらく間違っているので、これを書くために炎上するつもりです。
「私」に向けられたオブジェクトとは、問題のコンテキストに不可欠な主要なデータモデルと、問題のコンテキスト内でこれらのデータの状態を操作する対応するメソッドを認識する方法を意味します。データを整理するためのパターンです。もう1つのパターンは、管理可能なレベルに細分化された機能(手続き型)に基づいて単純に編成することです。
コンポーネント指向のパターンは、さまざまなデータモデルをどのように編成するかではなく、それらをどのように結び付けるかを重視します。それが彼らがお互いに話す方法です。COM / RPC、Webサービス(REST / SOAP)など、さまざまな方法が考えられます。これは、緩い結合または密な結合です。
そして、作者は、COM機能が組み込みのCOM機能を提供しない言語で構築されていると言っているだけです:)
私の理解では、コンポーネントを結び付けるという選択は、C / C ++のような言語が提供するものよりも高いレベルでの抽象化であるため、このステートメントは正しくありません。COMは、コンポーネントを結合する方法の1つを提供するだけです。
これが私の見解です、
継承とインターフェースは、2を議論するときによく言及されるトピックのようです。
また、コンポーネントの設計は、ブラックボックスを扱っていることを意味していると思います
コンポーネントの設計は、単一のメモリスペースを超えるシステムも対象としているようです。したがって、Webサービスまたは他のリモートサービスを呼び出します。
これらは競合するパラダイムではなく、異なるパラダイムであると言えます。