2011-06-26 41 views

回答

1

不應該以嚴格的方式理解SRP。一個對象應該有很少的責任,而不是「一個」。

這裏AccountDAO只負責帳戶持久性,所以它只有一個責任。

+0

應該如何描述這個類的責任?如果我說「AccountDAO負責賬戶持久性」,這是1的責任,但如果我說「AccoundDAO負責創建,閱讀,更新和刪除」,這些都是4.一般來說,文獻說如果您需要用AND來描述它,這意味着不止一個責任。那麼,描述的哪個層次是正確的? – ejaenv

+0

如果你是一名設計師/程序員,你將會遇到「粒度」(http://en.wikipedia.org/wiki/Granularity)這個問題。對於這個特定的DAO問題,「litterature」表示最好在一個類中實現所有CRUD操作(請參閱http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html)。如果您認爲有必要,請將我的答案標記爲有效。 – Tristan

+0

對於我制定的DAO課程,我會毫無疑問地回答它,但我看到我錯過了我提出問題的方式;而不是DAO特定的,我一直在尋找正確的粒度來描述責任。我將在另一個問題中闡述它。 – ejaenv