C#命名空间简单分析

开发 后端
这里介绍.Net开发中,一般目录名与C#命名空间名称是对应的。关于C#命名空间如何划分,目录如何分类,这个问题看似简 单,实际上却比较复杂,虽然它不像动植物学有一套完整的分类学。

C#语言还是比较常见的东西,这里我们主要介绍C#命名空间,包括介绍C#命名空间如何划分,目录如何分类等方面。

从C#命名空间的命名,目录的划 分与命名可以看出一个程序员是否有经验,是否很有经验。一个编程老手绝不允许架构混乱。

.Net开发中,一般目录名与C#命名空间名称是对应的。关于C#命名空间如何划分,目录如何分类,这个问题看似简 单,实际上却比较复杂,虽然它不像动植物学有一套完整的分类学。

在.Net B/S架构中,一般分为如下三个主要的C#命名空间:

  1. [公司名/作者名].[项目 名].Business  
  2. [公司名/作者名].[项目名].Data  
  3. [公司名/作者名].[项目名].Web 

这三部分可以在一个project中,也可以分置三处。

目录分类与空间命名之难在于:分类因素是二维的,而分类却只是一维的。解释一下:分类是一维的,指一个 词语只能代表一个分类名称的含义,无论同时表达两个含义;分类因素是二维的,指分类可以横向类别分类,也可以按纵向属性分类 。

假设我正在开发一个电子商务图书网站,这个商务按照常规,它有用户中心,帮助中心,支付中心,商品中心等。我的这个项目分为三个project,如下:

  1. Sban.ZLBook.Business  
  2. Sban.ZLBook.Data  
  3. Sban.ZLBook.Web 

在Sban.ZLBook.Web工程中,我下设UserCenter、HelpCenter、PayCenter、ProductCenter等目录,这样的分类 便是按类别横向分类。

而在这些分类中,肯定都用到了图片,还有一些css样式文件,这些文件我放在哪里?我把它们放在Web工程的 Images目录下(如果不另辟图片服务器的话)。如果文件太多,不好管理,其子目录又可以分为UserCenter、HelpCenter、 PayCenter 、ProductCenter等。如此,Images的目录的划分便是按纵向属性分类。

关于具体如何命名,没有什么通用的方法,要看具体项目。做的项目多了,架构才能见水平。C#命名空间与目录 建议大写。

不知道应该如何架构的时候,不妨翻一翻官方的类库。btw:flex工程中,包名(pakeage)与目录小写,而类名大写。

【编辑推荐】

  1. C#类和结构简单介绍
  2. C# explicti和implicit详解
  3. C#编写ActiveX控件详细介绍
  4. C# StringBuilder和String浅析
  5. C#别名指示符学习经验
责任编辑:佚名 来源: 博客园
相关推荐

2009-08-12 10:46:54

C#命名空间

2009-08-28 13:56:25

C#反射命名空间

2009-08-28 09:30:48

C#命名属性

2009-08-21 13:34:32

C# System.I

2009-09-01 17:17:48

C#命名空间和程序集

2009-09-01 17:29:51

C#命名规约

2009-09-01 17:32:04

C#版本控制

2009-08-31 18:24:26

编译C#文件

2009-08-26 18:00:07

C#内部类

2009-08-27 18:02:22

C#事件处理

2009-08-27 18:05:54

C#索引功能

2009-09-01 18:36:35

C#委托实例

2009-09-01 18:05:17

C#类型声明

2009-09-03 17:13:19

C#建立项目

2009-09-02 10:59:02

C#单路代理

2009-08-26 14:01:18

C#标识符

2009-08-31 16:01:31

C#和设计模式

2009-09-01 10:08:57

C#运算符

2009-08-27 10:44:21

C#静态变量

2009-09-04 10:07:42

C#完全限定名
点赞
收藏

51CTO技术栈公众号