數據訪問對象是規則'告訴,不要問'的例外嗎? 例如,從表數據網關獲取最後10個帖子?數據訪問:'告訴,不要問'的例外情況?
2
A
回答
8
人告訴不問summary說:
「你應該努力告訴你希望他們做什麼物體;不要詢問他們的狀態問題,做出決定,然後告訴他們什麼去做。」
在向數據對象詢問信息的情況下,我認爲我們不認爲我們違反了這個原則。
考慮使用「人員」信息顯示報告或UI。我沒有看到太多選擇說「你叫什麼名字?」請注意,我們沒有跟進任何「告訴他們該做什麼」。
3
從技術上講,當你向他們詢問自己的時候,你不是告訴他們告訴你一些關於自己的事嗎?
OOP讓我頭疼有時候,我無法知道何時停止思考並開始編寫,或停止寫作,開始思考:X
相關問題
- 1. 爲告訴,不要問
- 2. 告訴django不要關注外鍵?
- 3. 在不知道數據佈局的情況下訪問json類型數據?
- 4. 如何在我的情況下訪問我的JSON數據 - swift
- 5. 有例外的情況
- 6. 我需要訪問主函數以外的類的實例C#
- 7. Yii - 外鍵 - 訪問數據
- 8. 如何在這個簡單的例子中思考「告訴,不要問」?
- 9. 訪問不需要覆蓋報告
- 10. 訪問外部類的這種情況下
- 11. SPFarm.Local.Solutions.Add - 例外 - 「拒絕訪問」
- 12. 您是否爲特定問題或一般例外編寫例外情況?
- 13. 訪問>多字段的情況
- 14. Juding是否例外情況
- 15. 例外情況:com.soomla.store.exceptions.VirtualItemNotFoundException:使用
- 16. Amazon S3以編程方式訪問使用情況數據
- 17. CreateIdentityAsync,RavenDb.AspNet.Identity。例外情況:UserId找不到
- 18. 請告訴我這個例外
- 19. 開始構建數據訪問層。需要考慮的事情?
- 20. 如何在不訪問鏈接的情況下遞歸訪問鏈接?
- 21. 在不使用CodeFirst的情況下在C#/ .NET中訪問數據庫
- 22. 將Blob圖像導入ms的例外情況Access報告
- 23. 告訴Merb不要超時
- 24. 「告訴,不要問」,同時保持關注
- 25. 告訴,不要問原則 - 我應該在這裏應用嗎?
- 26. 「告訴,不要問」在多個域對象
- 27. Twitter訪問令牌使用情況
- 28. 在沒有實際數據更改的情況下告訴商店更新
- 29. C#如何在不創建實例的情況下訪問變量?
在這種情況下,考慮你問的問題是否需要對象本身改變。我們被勸阻的是打破了內部狀態的封閉和它的關係。例如,假設員工班級有薪水,本月出售的單位和委託書。我們不詢問工資和銷售情況,並設置委託 - 我們希望員工照顧並回答諸如「什麼是委託」等問題。 – djna 2009-08-02 16:26:41