当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 漫谈.Net开发关于命名空间和目录划分

ASP.NET
VS 2008和.NET 3.5 Beta2新特性介绍
VS 2008和.NET 3.5 Beta2常见问题的解决方案
Asp.net 备份和还原SQL Server及压缩Access数据库
Asp.Net中动态页面转静态页面
ASP.NET缓存:方法分析和实践示例
ASP.NET Forms验证(自定义、角色提供程序)
ASP.NET 2.0当中的Call Back机制
ASP.NET中MD5和SHA1加密的几种方法
在ASP.NET Atlas中调用Web Service
Cast的妙用:泛用LINQ 語句
ASP.NET将物件序列化成Binary储存至DB or File
使用Ajax后,原来导出功能失败的解决方法
装箱、转型、方法调用他们究竟有什么区别?
ASP.NET MVC :实现我们自己的视图引擎
如何构造一个C#语言的爬虫程序
Asp.net Mvc Framework可以在Controller中使用的Url.Action方法
校内网API的.net版本XiaoNei.Net 1.0(非官方)
使用ExtJS GridPanel从Web Service 获取、绑定和显示数据
从UI->DB一条龙到代码生成到EOS,谈谈快速开发
ASP.Net安装简明手册

ASP.NET 中的 漫谈.Net开发关于命名空间和目录划分


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 105 ::
收藏到网摘: n/a

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

.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)与目录小写,而类名大写。