Skip to main content

一連の責任とは何ですか?

obs責任(COR)には、オブジェクト指向のデザインパターン内のすべてのエンティティの活動と責任を示すプロセスが含まれます。オブジェクト指向のデザインには2つの基本的な要素があります。コマンドオブジェクトとオブジェクトの処理。コマンドオブジェクトは、処理オブジェクトへのコマンドを生成し、処理オブジェクトは、それらが処理できるコマンドから選択し、チェーン内の他のものに残りを渡すことができるコマンドから選択します。これは、オブジェクト指向のデザインの基本原理であり、責任チェーンのデザインパターンの任意の場所にあるオブジェクトの新しいエンクロージャーなど、デザインにはるかに柔軟性があります。デザインは、送信者コマンドを処理するための多くのオブジェクトがそこにあるため、通信は送信者と受信機に限定されないということです。コマンドを処理するために並んでいる異なるオブジェクトのチェーンがあり、それを処理できない場合、チェーン内の次のオブジェクトに渡すことができます。責任の連鎖は、オブジェクトの1つがコマンドを受け入れるまで続き続けます。各ハンドラーはあらゆるタスクを実行できないため、集合的に作業できるハンドラーのグループが必要です。チェーンの終わりであっても、いくつかのコマンドが未解決のままであるため、一連の責任にいくつかの欠点がある可能性があります。この問題に対処するために、1つの解決策は、すべての可能なリクエストに対してすべてのハンドラーを実装することです。プログラマがコマンドのリンクを忘れた場合、リクエストが迷子になる可能性があります。リクエスト表現は、責任連鎖のすべてのコンポーネントで使用されているため、重要です。CORの設計にある可能性のあるもう1つの欠陥は、具体的なハンドラーのいくつかの問題のために、チェーンの終わりでいくつかの要求がまったく対処されない可能性があることです。しかし、全体として、責任の連鎖は、関連するすべての側面を考慮して、慎重に設計されている場合、実装するのに適したシステムです。