我經常跟單職責類:
- ReportReader
- ReportWriter
- ReportSender
- ReportGenerator
,但我需要執行較高的L通過協調他們之間的任務。這些物體應該被稱爲什麼?
例1 - 生成然後發送報告
- 我需要一個協調的對象使用ReportGenerator和ReportSender類來生成一個報告,然後將其發送。
- 我不能稱之爲發件人或發電機。
- 調用類ReportGeneratorAndSender是一種氣味,因爲它負責兩種不同的行爲...
- ...但它並不真正負責這兩種行爲 - 只是協調那些做這兩件事的對象。
例2 - 生成然後發送報告
- 另一類需要生成一個報告,然後使用ReportWriter和ReportGenerator在同一應用程序寫入到磁盤 - 和我有同樣的問題。
我蹩腳的解決方案
- 我結束了類似ReportController或ReportCoordinator。
- 這太泛化,並沒有描述行爲。
我的問題
我應該稱之爲協調行爲的不同組合的對象?
有沒有可以幫助我的設計模式?
絕妙的回答。感謝您澄清那些幾年來一直困擾我的東西! – 2012-02-20 09:25:57