2011-06-26 7 views

答えて

1

SRPは厳密に理解されるべきではありません。 1つのオブジェクトは、「1つではなく」、非常に少ない責任を負うべきです。

ここで、AccountDAOはアカウントの永続性のみを担うため、責任は1つだけです。

+0

このクラスの責任はどのように記述する必要がありますか? 「AccountDAOはAccount persistanceの責任を負う」と言うと、これは1つの責任性ですが、「AccoundDAOは作成、読み込み、更新、削除を行う責任があります」と言われれば、これらは4です。それを記述するためにANDを使用すると、複数の責任を意味します。だから、どのレベルの記述が正しいのですか? – ejaenv

+0

デザイナー/プログラマーとして働いている場合、あなたはこの細かい粒度(http://en.wikipedia.org/wiki/Granularity)の問題を経験するでしょう。この特定のDAO問題のために、 "倫理学者"はすべてのCRUD操作を1つのクラスに実装する方が良いと言います(http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.htmlを参照)。あなたがそれがそうだと思うなら、私の答えを有効とマークしてください。 – Tristan

+0

私は定式化されたDAOクラスについて確かにあなたが答えたのと同じように有効とマークしますが、私は質問を定式化した方法を逃しました。私はDAO固有ではなく、責任を記述するための正確な粒度の方法を探していました。私は別の質問でそれを定式化するでしょう。 – ejaenv

関連する問題