Asp.Net大型项目实践-关键技术方案选择理由及思路
来源:互联网 发布:股东人数查询软件 编辑:程序博客网 时间:2024/05/17 03:38
为什么选择NHibernate
理由1:对象关系映射技术(ORM)的最主要目的是为了解决关系型数据库与面向对象编程技术不匹配的阻抗问题,何为阻抗?通俗的说面向对象的类往往都存在继承和类间关系与数据库的表不是一一对应的,ORM技术可能主要是想解决这个问题。这里需要说一下好多同学和砖家在用ORM的时候还是喜欢先建表,再工具生成和表字段一一对应的所谓实体,个人认为这不是O->R M,而是R->O M,实际上这种做法完全没有体现ORM的最关键思想,还是以前的“表驱动”(通俗解释:先设计表)而非“业务领域驱动”(通俗解释:先设计真正面向对象的业务实体)。因为我的系统业务比较复杂多变,我希望我能尽可能的随心所欲的按照面向对象的思想去设计我的业务实体,充分发挥面向对象思想的作用,不用关心这些设计是否能被持久化,显然NHibernate让我做到了这点,这是我在项目中选择使用ORM技术和NHibernate的最主要目的。
理由2:通过NHibernate和我们的合理设计,实现了对团队人员在开发的时候屏蔽掉数据库访问的技术细节,让我们更专注于业务和UI实现,在绝大多数情况下(复杂的报表查询和大批量操作依然可能需要存储过程实现)不必去关心SQL语句之类的,这对于一个绝大多数都是数据库操作的信息管理系统来说无疑具有很重要的意义。任何一个技术解决方案都不可能覆盖100%的需求,能用20%的精力,解决90%的问题就算是很成功了。
理由3:因为这个系统并不是只给一家医院使用,不同医院所使用的数据库产品是不一样的。从工程角度不能强制要求客户使用固定的数据库产品,NHibernate很大程度上屏蔽了不同数据库产品之间差异,使我不必对不同数据库产品分别写具体实现。
- Asp.Net大型项目实践-关键技术方案选择理由及思路
- Asp.Net大型项目实践
- Asp.Net大型项目实践系列导航
- Asp.Net大型项目实践系列导航
- [置顶]Asp.Net大型项目实践系列导航
- asp.net开发大型web产品为何选择webapplication而不是website,及结构安排
- 项目设计的方案及思路
- .NET 大型数据处理思路?
- 大型项目gitflow实践
- 大型ASP.NET MVC4项目之插入式程序结构
- ASP.NET 缓冲: 技术及最佳实践
- 【海量数据测试】大型项目中的海量数据迁移测试实践与方案
- .Net大型项目案例
- asp.net java 的十大关键技术
- asp.net java 的十大关键技术
- ASP.NET优化思路
- asp.net开发思路
- ASP.NET 大文件下载的实现思路及代码
- 【leetcode】Longest Valid Parentheses
- ImageView的属性scaletype
- Java 线程
- 1
- Java 链表
- Asp.Net大型项目实践-关键技术方案选择理由及思路
- 【leetcode】Edit Distance
- 好记性不如烂笔头之Oracle SQL优化(1)
- 利用MSP430F5438A单片机进行SD卡初始化——实战应用(四)与FatFs的整合1
- 例题7-5 困难的串 UVa129
- 百度网盘双倍流量上传
- Http中的cookie和session
- 【C语言】编写一个函数,传入a,b两个int类型的变量,返回两个值的最大公约数。(辗转相除法和常规求法)
- Redis 客户端redis-cli使用