チェックポイント: プロトコル
- プロトコル・クラス名は固有名である。
- プロトコルは、少なくとも 1 つのコラボレーションで使用される。
- プロトコルの簡単な説明によってプロトコルの目的が示され、システム内で果たす役割が手短に要約されている。
- プロトコルは、互いに結合しあったひとかたまりの責務を表している。
- プロトコル内のシグナルは、システムにおけるそのプロトコルの役割を果たすためにいずれもが互いに直接関連していて、2 つのカプセル間の通信に使われる単なるシグナルではない。
- そのようなシグナルは、可能なかぎり最も一般的な方法で選択される一方で、さらに明確さを維持している (たとえば、いくつかの Out シグナルがいずれも確認通知を必要とする場合に、1 つの Ack シグナルを応答として使用します)。
- プロトコルは、システムにおける 1 つの目的を反映している。プロトコル内で複数の操作が混合されている (たとえば、呼の処理と管理のシグナル) 場合、いくつかのそれぞれ独立したプロトコル・クラスに分けられている。
- 使用上何が必要であるかや、プロバイダーが知っているものではなく、自分が使用するために知る必要のあるものという観点から見てプロトコルが定義されている。
- 接合させる「側」のインターフェースを決定するガイドラインが、首尾一貫して用いられている。
インターフェースを接合する必要性を減らすために、非対称プロトコルは、クライアント (ユーザー) の観点にたって定義されている。
- 非対称プロトコル・クラスには、その方向性を明確に示す名前 (たとえば 'ClientResourceInterface') が付けられている。
参照項目:
| |
|