我有一個大的.NET Web應用程序。系統有不同意圖的項目(例如CMS,論壇,電子商務),並且我注意到調用另一個項目類的(天真)模式。例如,電子商務模塊需要功能來爲產品動態生成文件,並且我在CMS中調用並引用一種方法來執行此操作,因爲文件處理對於CMS來說確實是一項工作。簡單的提示,以減少耦合
顯然,(我知道爲什麼),這是不好的設計和高耦合的情況。
我知道一些方法來處理高耦合,如重組項目(雖然我真的不認爲這是一個強大的解決方案),但還有什麼我可以做,以減少高耦合?任何簡單的提示?另外,最好知道他們爲什麼/如何減少耦合。我使用.NET 3.5和Sql Server 2005,所以像JMS(我在搜索關於此設計問題的技巧時不斷遇到)都不適用。
感謝
BTW,
一個我問這是我看過與此類似,但通常如果已經問過一個問題被再次問前面的問題的原因,不同的人可以在不同的人回覆帖子時學到不同的提示。
我知道依賴注入/ IOC的,但我感興趣的是小事情可以做,以減少耦合。
如何選擇使用靜態類還是界面派生類,或IOC方法在決定如何減少耦合時使用?另外,我可以開發一個可以調用靜態類的Web服務 - 在我的解決方案中混合使用這些方法。
有趣的是,在我的應用程序,我不希望它被脫節。所以我只需要一個論壇,電子商務系統和任何其他模塊,但是每個模塊都必須凝聚成一個站點,因此每個模塊(在我的Visual Studio解決方案中表示爲一個專用項目)都需要了解每個其他模塊並工作用它。因此,例如,我可能有一個處理用戶配置文件的模塊(使用ASP.NET成員資格,角色等),但是這將與論壇模塊一起工作,因爲論壇上的用戶將是該網站上的註冊用戶(一個全程登錄),他或她的個人資料將來自用戶個人資料模塊。這與我在其他網站上看到的獨立配置文件相反)。