我把不同的組件放在不同的DLL中,然後最終發現我有太多的DLL,我應該把一些DLL放在一個DLL中,但使用命名空間來分隔它們?物理或邏輯分離我的dll?
0
A
回答
3
您不必爲一個名稱空間構建一個程序集。也許你可以在一個程序集中使用嵌套的命名空間。只要儘量避免拆分幾個程序集之間的名稱空間,事後再輸入項目時就很難理解。
1
您還可以在構建過程中使用ILMerge,以便可以將許多項目合併到一個DLL中。
2
是的,個人建立一些庫時,我傾向於把所有相關的功能放在一個程序集中。我經歷的基本經驗法則是,如果單個DLL依賴於以任何方式相關的另一個DLL,我通常會將它們組合成一個DLL。當然,這兩個項目都在同時開發。
+0
不錯的主意。感謝分享。 – Benny 2010-03-16 15:23:11
1
我通常使用DLL來執行架構約束。例如,我不希望我的數據層知道有關業務層的任何信息。當這導致太多的程序集(並且很長時間來編譯)將它們移到一起可能是明智的。在這種情況下,您可以使用像NDepend這樣的工具來檢查您的架構限制。
相關問題
- 1. 邏輯與物理設計
- 2. 邏輯和物理組件
- 3. 分離業務邏輯
- 4. 業務邏輯分離
- 5. 邏輯與物理常數的區別
- 6. 從java中的GUI中分離邏輯
- 7. Java的堆棧分配的大小是物理還是邏輯?
- 8. 如何分離模型(業務邏輯和商店邏輯)?
- 9. PHP:分離業務邏輯和表達邏輯,值得嗎?
- 10. 邏輯常數和物理常量性
- 11. 尋呼和邏輯和物理地址
- 12. 物理緩存VS邏輯緩存
- 13. 分離邏輯/ GUI和用戶交互
- 14. 從Backbone.Device分離模板邏輯
- 15. 分離Drupal模塊邏輯和UI
- 16. C#DAL與PL邏輯分離
- 17. 從邏輯中分離數據
- 18. JSP - 從邏輯中分離設計
- 19. 如何分離業務邏輯
- 20. TFS分支是物理還是邏輯快照?
- 21. Rails插件分離標記和邏輯,如Wicket或Effigy
- 22. 我該如何分離Android中的邏輯/ UI
- 23. C#winforms:我的GUI和邏輯分離是否正確完成?
- 24. 如何在我的Android遊戲中分離UI和邏輯?
- 25. 2列的邏輯運算(邏輯或)
- 26. 每個物理飼料或邏輯飼料的atom:id元素是唯一的嗎?
- 27. Java EE:使用bean將表示邏輯與業務邏輯分離
- 28. 在這個例子中,我該如何分離我的SQL和業務邏輯?
- 29. 虛擬處理器和邏輯分區
- 30. 邏輯或SQLite中
至少我應該把什麼是靠近一個DLL,對不對? – Benny 2010-03-16 15:15:37
是的。在程序集中定義的類應該傾向於相同的目的。 – Seb 2010-03-16 15:17:09