這是一個設計問題/討論。你會如何設計你的應用程序?通過繼承還是通過構成?
我創建了一個包含大約50個類的解決方案。
我通過引入包含類之間共享信息的新抽象類來重構類和刪除重複代碼,以便這些類從它們繼承。
E.g.
Abstract ColumnBuilder
ColumnBuilderForDepartmentReport : ColumnBuilder
ColumnBuilderForStoreReport : ColumnBuilder
現在沒有我的設計包含很多類和重複代碼已被刪除這是一件積極的事情。
這是一個很好的設計?
我聽說我們應該更喜歡Composition over Inheritance。
它將如何應用於這種情況下,你想使用繼承來刪除重複的代碼?我應該重構代碼以使用Composition?怎麼樣?
感謝
很多問題已經被問到這個問題:http://stackoverflow.com/questions/49002/prefer-composition-over-inheritance,http://stackoverflow.com/questions/453738/inheritance-or-組成依賴於一個和一個... – Heisenbug