2011-03-28 53 views
0

我在教自己,因爲我去了,並且是我們組織中唯一的開發者。我已經開始將特定任務分解到類庫中,以便隨着組織需求的增長,我可以重新使用該代碼。dotnet應該只是一個類庫只暴露一個接口或一個實現

我傾向於例如IMailingThingie和MailingThingie在類庫中,因爲當我添加對庫的引用時都解決了。

我也覺得像這樣可以減少重複的代碼,但導致了一些箍跳躍(例如,以適應日常MailingThingie規則和每月MailingThingie規則)

是更好的做法是隻暴露在類庫中的接口並以項目爲基礎對項目的實現進行編碼?

我使用C#的dotNet,但我想在這個級別的架構決策是語言中性...

SolutionRoot1 
--ClassLibrary 
----IMailing 
----Mailing 
--Project1 
----Reference 
--Project2 
----Reference 

SolutionRoot1 
--ClassLibrary 
----IMailing 
--Project1 
----Reference 
----Mailing 
--Project2 
----Reference 
----Mailing 

回答

1

它的更好,如果導致代碼共享的實現再利用。如果因爲不同的業務規則而陷入困境,則應該考慮繼承以允許您分享基本知識並允許每個項目定義具體內容。

最好的做法是瞭解共享接口和共享實施的區別,以便您可以選擇給出問題的最佳解決方案。

相關問題