私は現在のプロジェクトで責任の連鎖パターンを頻繁に使用していることに気づきました (私にとっては 3 回が多い)。解決策について少し熱狂しすぎたのではないかと思っています。具体的には、Apache Commonsチェーン プロジェクトを使用しています。そのため、これまでのところ、アプリ ロジックの複雑で交換可能な多数の部分が、よりまとまりのある組織化された全体に簡素化されていることに非常に感銘を受けました。しかし、このプロジェクトに参加した新しい人々の中には、「それを理解する」のに苦労しているように見える人もいます。それについてあなたの経験は何ですか?その実装でどのような問題に遭遇しましたか?
これまでのところ、私が気づいた唯一の問題は、閉じる必要があるオブジェクトを処理しようとしているときです。これらのオブジェクトを Context クラスに格納すると、チェーンの実行が完了したときに苦労します。コマンドの代わりにフィルターを使用してこれを回避できましたが、close ステートメントはオブジェクトがインスタンス化された場所から非常に離れていることが多いため、少し直感的ではないようです。
いずれにせよ、このパターンについて私より経験のある開発者の意見を聞きたいです。
前もって感謝します。