学习asp.net已经有一段时间了。看了一些开源的项目。比如discuz !nt
看了下他们整个网站框架有很多层。看都看得很晕啊。平常了解最多的就是 三层。但是他们好像又10几层 。。各位高手能不能介绍下。这些层各自有什么用处。想了解下。并进行实践。来搭建一套这样的框架。限制主要是不知道怎么入手。比如 他们的 数据层。都有接口。好像都是面向接口编程。我很是羡慕这些高手。我很想学习。希望各位指点。如果有这方面专门讲解如何搭建框架的资料。麻烦提供给我下。我的邮箱 286067198@qq.com 先在这里万分感谢了。。。
框架的搭建需要结合项目大小、编码人员数量、扩展方向、投资等方面来决定的。
不论是几层,目的都是为了开发方便、移植性好。
一般情况下,只要能适应当时环境即可,没必要为了追求技术层面的东西,忽略了本质。
可能你目前没有到大公司,接触不到大项目,所以自然就不太懂。
其实项目越大,分工越细, 实现越简单。
搞不好,还没你现在写的难度大。
程序就是为了实用,这才是王道!
我觉得有个盲区,不是类库多了分层就多,
discuz !nt 其实也是基于传统三层的演化,
比如在此基础上添加了 缓存处理机制,Url重写机制,日志处理等等。
刚开始的项目其实没必要做那么多东西,
项目扩展是伴随用户量,风投,性能瓶颈,Seo优化等等一步一步完善起来的。
其实分出那么多层基本上都是从3层演变而来,逃脱不了业务、数据和实体,只不过将这3层更加细化了,比如多数据库访问需要多个项目,业务逻辑的改变但是原有的逻辑无法删除,所以还需要重新建新的逻辑。
如果项目引用一些新的技术但为了减少对现有项目的修改那又需要建立新的层,比如WCF、Silverlight等。
还有一些层就是项目的帮助类库、缓存、通用类库等等。
discuz !nt其实没你想的那么负责,之所以那么多层,是因为组件有很多。关于它的介绍你可以去代震军的博客看看,他负责这一块的,讲解过discuz !nt项目里的架构文章。