IT資格用語解説基本情報技術者試験・コンポーネントウェア
コンポーネント
更新日:
用語解説
コンポーネントは、明確なインタフェースを通じて他の部品と組み合わせられ、内部実装を隠した再利用・交換可能なソフトウェア構成単位です。提供する機能と、動作に必要とする機能を契約として外部へ示します。
■ 試験で押さえるポイント
提供インタフェースと要求インタフェース、設定、依存関係、状態、ライフサイクルを明確にすると、実装言語や内部構造を知らずに結合できます。
独立して開発、試験、版管理、配備できる粒度が望まれますが、一つのクラス、一つのプロセス、一つのWebサービスと必ず一致するわけではありません。
疎結合にするには、具体実装へ直接依存せずインタフェースに依存し、入出力形式、エラー、性能、互換性を契約で定めます。
■ 選択肢での判断ポイント
部品指向の問題では、カプセル化、明確なインタフェース、交換・組合せ・再利用が判別語です。クラスは言語上の型、モジュールは名前空間や配置単位などを表し、コンポーネントとは必ずしも同義ではありません。
例: 決済コンポーネントがpayとrefundのインタフェースを提供し、監査ログ機能を要求します。同じ契約を満たす別実装へ、利用側を変えずに交換します。