Spring.NET企业架构 Nhibernate + .NET三层+Spring.net(ado)+ ASP.NET MVC完美结合

来源:互联网 发布:宁国 网络 编辑:程序博客网 时间:2024/05/01 00:10

PetShop存在以下的弊端(这边转他人的blog文章):

1、入门级别的架构,不完全适于中、高级开发人员学习。

  PetShop4.0作为.NET三层的一种入门型架构。目前据我了解,大多数公司的架构模式都采用或者效仿PetShop4.0,更是还在用简单三层,或是直接不分层。对此我个人认为:作为.NET开发人员来说,这样并没有完全理解分层的真正意义,照搬PetShop4.0,而没有真正灵活应用PetShop4.0。我想,针对真正的大型项目,在扩展性,重用性,负载均衡上,PetShop4.0是很吃力的。对于服务器集群的分布式的应用来说是个空白。

  2、错误的引导程序员对架构的深入了解。  

  很多.NET开发人员习惯认为:学会PetShop4.0以后就学会了大多数公司的架构。对此我个人认为这是.NE开发人员的悲哀。目前可以这么说,PetShop4.0影响了一代.NET程序员的架构思路,并把这代程序员的设计思路给限定“死”了。习惯性认为架构就是“DAL,BLL,UI”。我想,这样就会阻碍出架构设计。我认为PetShop4.0仅仅是一个“特列”,而不是一种通用型架构。

  3、移植性和重用性偏弱。

  对于SQLServerDAL和OracleDAL来说,在实际中增加第三种数据库就需要再写一个DAL,这样会增加我们的开发成本,我个人建议使用ORM框架来实现比较恰当。因为这样便于数据库的移植。在持久层中,基本上每个表都需要对应的CRUD,建议使用Repository将代码内聚起来。PetShop4.0的SQL语句是写在类里的,这一点我比较反对,我倾向于把SQL语句写在配置文件或者模板文件里(如:ibatis.net),这样看上去会更灵活。

 

  4、仅适用于展示.NET2.0的特性,在NET3.5以上环境却失去了优势。

  PetShop4.0发布已经有好几年了,在新技术层出不穷的时代。PetShop4.0对于AJAX,Web Sericve、WCF、ASP.NET MVC的支持略有欠缺。对于ORM、IoC、AOP等编程思想的概括几乎为空白。

自己对多方面的考虑,把初级到中级的程序员都能接受的框架整合到一起:Spring.NET企业架构 Nhibernate + .NET三层+Spring.net+ ASP.NET MVC完美结合

结合后的架构图

代码整理中。。。