2009-08-02 6 views
2

데이터 액세스 개체가 '묻기, 요청하지 않음'규칙의 예외입니까? 예를 들어 테이블 데이터 게이트웨이에서 마지막 10 개의 게시물을 가져 오시겠습니까? 묻지 마에게의데이터 액세스 : 'Tell, do not ask'예외?

답변

8

summary는 말한다 :

"당신은 당신이 그 (것)들을 원하는 어떤 객체에게 노력한다, 그들에게 자신의 상태에 대한 질문을 결정을하고 그들에게하지 않는 것 할 것."

데이터 개체에 정보를 요청하는 경우 해당 원칙을 위반하지 않는다고 생각합니다.

"개인"정보가 포함 된 보고서 또는 UI를 표시하는 것이 좋습니다. 나는 "너 이름이 뭐니?"라고하는 것에 대한 많은 대안을 보지 못한다. 우리는 "그들에게 무엇을 해야할지"를 알려주지 않습니다.

3

기술적으로 당신이 그들 자신에 대해 물을 때 기술적 인면에서 그들에게 당신에게 뭔가를 말하지 않습니까? 당신의 묻는 질문 개체 자체를 필요 여부를 고려이 경우 X

+1

:

OOP 내가 생각을 생각을 중지하고 쓰기 시작, 또는 쓰기를 중지하고 시작할 때 결코 확신, 때때로 나에게 두통을 제공합니다 바꾸다. 우리가 권고하고있는 것은 내부 상태의 캡슐화와 그 관계입니다. 예를 들어 Employee 클래스에 급여가 있다고 가정하면 이번 달에 판매 된 단위와 commision입니다. 우리는 급여와 판매를 질의하지 않고 커미션을 설정하지 않습니다. 우리는 직원이 그 일을 돌보고 "커미션이란 무엇인가"와 같은 질문에 답할 것을 기대합니다. – djna

+0

아, 언제 생각을 멈추고 멈출 지 ... 나는 경험이있는 경향이 있다고 생각한다. 종종 통찰력은 당신이 잠시 뒤로 쓴 코드를 유지하려고 할 때 발생합니다 - 아하! 내가 그때 더 잘 생각했다면! – djna

+0

나는 이것을 스스로 알기 시작했다. – Sneakyness

관련 문제