.Net開發漫談:關于命名空間和目錄劃分

從命名空間的命名,目錄的劃分與命名可以看出一個程序員是否有經驗,是否很有經驗。一個編程老手絕不允許架構混亂。

.Net開發中,一般目錄名與命名空間名稱是對應的。關于命名空間如何劃分,目錄如何分類,這個問題看似簡單,實際上卻比較複雜,雖然它不像動植物學有一套完整的分類學。

在.Net B/S架構中,一般分爲如下三個主要的命名空間:

[公司名/作者名].[項目名].Business

[公司名/作者名].[項目名].Data

[公司名/作者名].[項目名].Web 這三部分可以在一個project中,也可以分置三處。

目錄分類與空間命名之難在于:分類因素是二維的,而分類卻只是一維的。解釋一下:分類是一維的,指一個詞語只能代表一個分類名稱的含義,無論同時表達兩個含義;分類因素是二維的,指分類可以橫向類別分類,也可以按縱向屬性分類。

假設我正在開發一個電子商務圖書網站[湛藍書店www.ZLBook.cn],這個商務按照常規,它有用戶中心,幫助中心,支付中心,商品中心等。我的這個項目分爲三個project,如下:

Sban.ZLBook.Business

Sban.ZLBook.Data

Sban.ZLBook.Web

在Sban.ZLBook.Web工程中,我下設UserCenter、HelpCenter、PayCenter、ProductCenter等目錄,這樣的分類便是按類別橫向分類。

而在這些分類中,肯定都用到了圖片,還有一些css樣式文件,這些文件我放在哪裏?我把它們放在Web工程的Images目錄下(如果不另辟圖片服務器的話)。如果文件太多,不好管理,其子目錄又可以分爲UserCenter、HelpCenter、PayCenter、ProductCenter等。如此,Images的目錄的劃分便是按縱向屬性分類。

關于具體如何命名,沒有什麽通用的方法,要看具體項目。做的項目多了,架構才能見水平。命名空間與目錄建議大寫。

不知道應該如何架構的時候,不妨翻一翻官方的類庫。

btw:flex工程中,包名(pakeage)與目錄小寫,而類名大寫。

.Net開發漫談:關于命名空間和目錄劃分
從命名空間的命名,目錄的劃分與命名可以看出一個程序員是否有經驗,是否很有經驗。一個編程老手絕不允許架構混亂。 .Net開發中,一般目錄名與命名空間名稱是對應的。關于命名空間如何劃分,目錄如何分類,這個問題看...查看完整版>>.Net開發漫談:關于命名空間和目錄劃分
 
.Net(C#)開發漫談:關于變量的命名和屬性
static readonly與const的變量,作用是一樣的,無論訪問修飾符是不是public,還是其它(private、protected、internal),變量名稱一般爲大寫,中間以下劃線。 public static readonly int MAX_HEIGHT; public const ...查看完整版>>.Net(C#)開發漫談:關于變量的命名和屬性
 
公布《.NET軟件開發技術基礎》全書目錄
《DOTNET軟件開發技術基礎》全書目錄 本書範例圖片(彩頁) 將本書的幾個重點範例截圖放在前面 自序一、我爲什麽寫這本書?二、怎樣學習軟件開發技術? 1 區分計算機科學與計算機技術 2 了解技術發展趨勢:...查看完整版>>公布《.NET軟件開發技術基礎》全書目錄
 
親密接觸ASP.Net(6)Namespace(命名空間)的使用
關于Namespace(命名空間)的使用 在前面的程序中我們看到,我常用<% @ Import Namespace="System.Data" %>,這是在引用M$爲我們提供的Namespace,這和ASP不同的,我們在ASP.net必須先引用與我們操作有關...查看完整版>>親密接觸ASP.Net(6)Namespace(命名空間)的使用
 
漫談.NetPetShop和DuwamishADO.NET數據庫編程
漫談.NetPetShop和DuwamishADO.NET數據庫編程
  概述   ADO.NET爲我們提供了強大的數據庫開發能力,它內置的多個對象爲我們的數據庫編程提供了不同的選擇。但是在允許我們靈活選用的同時,許多初學者也很迷惑,我到底是應該使用DataReader還是應該使用DataA...查看完整版>>漫談.NetPetShop和DuwamishADO.NET數據庫編程
 
JNDI(Java 命名和目錄接口)
JNDI(Java 命名和目錄接口) 分布式計算環境通常使用命名和目錄服務來獲取共享的組件和資源。命名和目錄服務將名稱與位置、服務、信息和資源關聯起來。 命名服務提供名稱—對象的映射。目錄服務提供有關對象的信息...查看完整版>>JNDI(Java 命名和目錄接口)
 
漫談.Net PetShop和Duwamish ADO.NET數據庫編程
  概述  ADO.NET爲我們提供了強大的數據庫開發能力,它內置的多個對象爲我們的數據庫編程提供了不同的選擇。但是在允許我們靈活選用的同時,許多初學者也很迷惑,我到底是應該使用DataReader還是應該使用DataAda...查看完整版>>漫談.Net PetShop和Duwamish ADO.NET數據庫編程
 
[轉]漫談.Net中的自動垃圾收集機制
漫談.Net中的自動垃圾收集(Garbage Collection)機制作者:cornfield 一直以來,垃圾收集(Garbage Collection)在軟件界的名聲並不好。很多程序員認爲垃圾收集做得不如自己來的直接,高效。這種說法有些時候是對的...查看完整版>>[轉]漫談.Net中的自動垃圾收集機制
 
JAVA命名和目錄服務(JNDI)
在J2EE中,JNDI的目的是用來查找J2EE服務器的注冊資源(如EJB等)一、JNDI簡介命名服務提供了一種爲對象命名的機制,這樣你就可以在無需知道對象位置的情況下獲取和使用對象。只要該對象在命名服務器上注冊過,且你必...查看完整版>>JAVA命名和目錄服務(JNDI)
 
 
回到王朝網路移動版首頁