在的delphi多层方案里midas在数据处理上(将数据打包发送中间层)确实很方便,而且高效。可是我感觉midas的本身结构就将中间层的数据和逻辑耦合到了一起,在大项目的维护上很不好并且也不符合oo的思想。
我也使用过c#来设计多层系统,基本上思想是这样:客户端(传递类实例)-〉webservice->逻辑层-〉数据持久层-〉数据库。在客户端只涉及表现层的东西,对于数据的逻辑都放在逻辑层,并且使用持久层进行数据的维护,我觉得这样的架构维护方便,在客户端很多的时候部署也很方便(逻辑层的修改只需修改服务器端)。
在c#\java上持久层的资料以及代码生成器真是应有尽有,可我现在奇怪的是delphi在这方面却是空白(我所了解的很多公司都不是采用的上述方法),网上关于
delphi o/r方面的资料也是了了可数,确实使用了o/r映射会使开发的工作量要大些,可对于一个大型的软件而言软件的可维护性和健壮性才是最主要的。为何有这种现象呢?我本想使用delphi来设计一套持久层,在此之前我想先听听大家的意见和见解
我也使用过c#来设计多层系统,基本上思想是这样:客户端(传递类实例)-〉webservice->逻辑层-〉数据持久层-〉数据库。在客户端只涉及表现层的东西,对于数据的逻辑都放在逻辑层,并且使用持久层进行数据的维护,我觉得这样的架构维护方便,在客户端很多的时候部署也很方便(逻辑层的修改只需修改服务器端)。
在c#\java上持久层的资料以及代码生成器真是应有尽有,可我现在奇怪的是delphi在这方面却是空白(我所了解的很多公司都不是采用的上述方法),网上关于
delphi o/r方面的资料也是了了可数,确实使用了o/r映射会使开发的工作量要大些,可对于一个大型的软件而言软件的可维护性和健壮性才是最主要的。为何有这种现象呢?我本想使用delphi来设计一套持久层,在此之前我想先听听大家的意见和见解
解决方案 »
- 如何用delphi从sql数据库的表中提取一个特定的数据呢?
- 如何判断一个事件被触发?不用message的方式
- excel的保存能不能 不用提示直接保存啊?
- 打印文档后不走纸
- 300分求《信息时代的管理信息系统 》电子版,斑竹手下留情
- Indy控件作邮件收发断开时提示“Connection Closed Gracefully”!如何处理?
- ADO连接超时已过期问题,在企业管理器也是,不过查询分析器没有关系! 在线等!!!!
- 各位高手:在Delphi中如做帮助文件。
- 录入界面问题,来者有分
- 有区别吗?C/S结构和单层数据库系统(数据库在局网另一台机子上)
- 恭喜哈欠夫妇造人成功
- 二进制图像数据如何还原成图片?困扰我三四天不得解了~
即使是midas,你也可以在服务层将所有的逻辑写完,然后在客户端只展现/采集数据(或者可以加少量的数据校验代码,不用到后台校验的那种)。
当然Borland所作的三层结构的思想还是基于两层结构而言的,返回的数据并不是对象型的,而是包装在dataset控件中;对于OO的支持并不是那么好。如果在delphi中能找到或写一个类似java的hibernate的东东就好了,那样就可以很自然的将数据结果与对象映射关联起来。可惜我还没发现这样的工具,可能也没高人有兴趣来写这样的东东。delphi属于冷兵器时代的王者,而现在是热兵器时代了。
敢问,现在有哪个for win32编程的工具强于delphi(7)呢?
不过你说的最佳方案确实是现在很多公司正在使用的折衷的方案
还是淡出吧......
代码生成器:这个完全可以自己写,我就有一个......
用代码生成器把DataSet到Object和Object到DataSet的转换搞定......其实我用C#作Web应用的时候也是这样,哈哈
“万物皆对象”难道必须什么都用class或object?OO是一种思想而不是表现形式,主要体现在分析问题的角度上,
如果分析问题时OO了,很自然的,你的设计、编码就是OOMIDAS、ECO、Hibernate 在设计上的出发点是不同的,
MIDAS、ECO更多是基于“组件”方式来实现,侧重点在于数据处理
Hibernate则更偏重于“类”方式,侧重点在于数据本身你能说“组件”不是OO吗?选择一门工具,不仅仅是选择了“语言”,
更多的是选择了一种工作方式,
既然选择了Delphi,就应该接受它的工作方式不是不能做各种不同工具间的横向比较,
关键的是比较标准要客观,这样比较的结果才有意义。如果换个标准:从对“组件”的支持来考察,相信你能得出另一个结论
但绝不是唯一的方法,更不是“标准”方法衡量各种方法优劣的标准只有一个:
能否最大限度的发挥生产力
讨论趋势一类的问题,更是跑题且不去争论Delphi是否会退出市场,什么时候退出市场
假设Delphi退出市场了,
那些基于Delphi的“类似NHibernate或Ibatis的delphi架构”能够有生命力?市面上没有“类似NHibernate或Ibatis的delphi架构”,
并不能说明Delphi有缺陷或者已经落伍
而是说明MIDAS、ECO足够强大,
根本没有必要别别扭扭的去学习Hibernate搞什么O-R映射我丝毫没有否定O-R映射的意思,
水晶鞋是很漂亮,但是得穿在灰姑娘脚上,
如果硬要往白雪公主脚上套,难免要削足适履
无论你是打算做框架还是别的什么,
在重复造一个车轮之前,不如先好好想想怎么使用现有的车轮
http://blog.csdn.net/gordonliwei/archive/2007/03/02/1519013.aspxDelphi里其实早就有O-R映射的架构,
从早期的Bold到现在的ECO,只不过是没有MIDAS出名罢了
言归正传:
如果使用语言delphi,在一个winform系统上,有设计持久层的必要吗??原因我现在的意见是:需要,1.这对于系统的后期维护有好处,逻辑清晰
2.使得系统再日后再挂web版等的系统很方便(只需设计表现层)