[英]C# .net - Dll Naming Conventions in Interface / Implementation Scenarios
我需要對dll進行巧妙命名的一些建議和/或以下情況下是否存在任何命名約定的提示。
我有一個接口定義,並且該接口定義使用的幾種類型封裝在一個dll中。 然后,我在另一個dll中實現了該接口。 關於這種情況的“特殊”之處在於,我不開發應用程序,而是開發了公司的多個應用程序使用的功能(又稱為框架)的集合。 這些功能是通過MEF通過其接口定義訪問的,因此,該框架的用戶通常不知道該實現在哪個dll中,也不重要(因為他只需要知道並引用包含該接口定義的dll)即可。 )。 只是在非常罕見的情況下,他可能想知道dll(包含實現的那個)的命名方式,因為他想用自己的替換實現。
我為dll命名創建了一些要求:
首先,我想到了將一個特定類型的所有接口定義分組到一個dll中的想法,這將創建一個命名很好的名稱空間,因為我可以將所有“服務”分組到一個名為MyCompany.Services.dll的dll中,該根目錄中的所有定義和類型(這將創建名稱空間MyCompany.Services),因此使解決方案結構與名稱空間相同(如果有用或無效,在此也可以進行討論)。
但這產生了一個大問題:
如果我對dll進行簽名並更改MyCompany.Services.dll中的某些內容,則即使該更改僅影響這n個dll中的一個,我也必須重新編譯所有實現dll。 那時,我考慮過將每個接口定義和ity類型放在一個自己的dll中(如本文開頭所述)。
我的2美分價值:
Basti.SpecialFramework.Interfaces.DataAccess.Customer
這樣的東西對我來說很有意義。 Basti.SpecialFramework.Interfaces.DataAccess.Customer
與Basti.SpecialFramework.BaseImplementations.DataAccess.Customer
順便說一句:我確定DLL和Assembilies的命名約定存在-我只是不知道它們是什么。 我想我可以Google / Bing他們,但我想您已經做到了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.