小评几种O/R Mapping工具 - 第八基地

软件开发的家园,编程爱好者的天地.

现在是:北京时间 2016/4/14 上午11:50:51 星期四

设为首页  |  加入收藏  |  网站地图

小评几种O/R Mapping工具
发布于:第八基地 来源:互联网 作者:天堂路上 时间:2011-10-12 点击:255

LLBLGenPro 满意度:撞头度:      作为一个商业组件,可以说它是一个令我不知所措的一个工具,它提供的功能超出了我的想象,犹其在易用性上,提供了一个非常漂亮的界面,可以很自由的制作出表然后直接生成业务层的代码,这一点是非常不错的。它支持Oracle、IBMDB2、Firebird、MySql、SqlServer、Access这几种数据库,基本上还是够用了的。     它最大的特色在于对数据库的存储过程的支持,这一点是非常让人兴奋的,毕竟尽管不少架构师都认为存储过程造成了数据库移植的难度,但要做高性能的数据库应用程序,存储过程是一个首选方案,比如插入一张图片的二进制数据到数据库中时,存储过程无论如何都要比直接写个Sql语句要快得多,同时,在具体进行开发分工时,对于前台与后台的分工上显得也比较明确,更能够有效地利用人力资源。  它能够直接生成基于vs.net2003的解决方案,对中文的支持也非常不错,但可惜的,它提供的数据库表的浏览器并不支持直接编辑,同时也没有关系视图的表示,这样的话,实际上它显示UI界面的意义并非十分重要,最终的数据库设计还是得依赖于对数据库的直接操作。换而言之,它仅是一个由表到实体类的代码生成器,虽然看似灵活,实际上在真正的实际操作中,需要自己的更改代码的部分还是比较多的,这对于一个称之为O/RMapping的工具来说,是一个不够完善的地方。NHibernate 满意度:撞头度:  作为从Java世界中移植而来的工具而言,Hibernate的成功是有目共睹的,然而这并不意味着NHibernate的成功,尽管听说有参与了Hibernate开发的人员加入了NHibernate阵营,但这并非表示事情很乐观。如果NHibernate能够在今年6月份前发布1.0的release的话,那么还可以满足一下大众的需要,但根据目前的进度估计及目前NHibernate的相关资料分析,6月份前要发布一个较为理想的版本,难度还十分之大。  从严格意义上来说,NHibernate是相对于其它的O/RMapping组件拥有更成熟的思想与构架,而且有着Hibernate的皇族血统,这对于.NET平台下的开发的意味是非常巨大的。NHibernate在灵活性上也具有其它组件不可比拟的优势,但可惜的是,毕竟NHibernate的JAVA血统过浓,移植的可靠性还需要一段时间来进行检验,同时对于企业级的应用,我相信追求稳定性的大多数人更宁愿肯选择微软的解决方案(就算微软的解决方案并不理想)。而且,它的发布实在是太慢了,如果等到微软的vs.net2005推出后再发布的ObjectSpace组件正式release了的话,NHibernate的前景就比较难料(毕竟我们还不知道正式release的ObjectSpace会长成什么模样)  不过,根据世界范围来看,NHibernate的关注人群非常之多,它是一个在.NET下倍受关注和推崇的项目,在远景规划上有现成的方案可以参考,还有一点重要的是,以微软的作风,ObjectSpace应该不会提供多种类数据库的支持,然而这对于许多开发人员来是,却是非常重要重要的,所以从一定意义上来说,NHibernate在一段时间内的发展将会是乐观的。EntityBroker满意度:撞头度:  这又是一个商业组件,商业组件在构架上未必比开源的项目更好,但商业组件有一个好的地方在于有良好的技术支持与售后服务,用起来比较放心,不必像开源组件那样必须等到下一个版本的release。  EntityBroker是一个相对比较好的组件,它的特色在于对COM+事务的支持,这一点是大多数O/RMapping组件没有做到的。不过,对于习惯了数据绑定的开发人员来说,使用EntityBroker并不是一个好的选择,它在这方面的支持可谓是恶劣。它有一个现象就是查询一个对象时,效率非常之高,但如果你想一次性弄出一堆对象来的话,效率就会很低下。尤其是进行诸如DataGrid的绑定的时候,数据量一大,其效率很难令人难受。这可能是由于EntityBroker在查询机制上过分强调了功能的缘故。

对我有帮助
(0)
0%
对我没帮助
(0)
0%
返回顶部
在线反馈
在线反馈