最近要用delphi做项目了,虽说delphi也玩了有不短的时间了,并且自认为有一定的‘造诣’:) 但是做实际的数据库应用却还真是第一次[em]e19[/em]。而且实际做起来才发现,自己对delphi的了解其实并没有自己想象的那么多。
主要是以前没有什么东西做呢,对delphi的研究方向也就比较流于理论、低层。比如他的对象机制,消息机制,还有就是vcl的架构等,还时常需要查看编译后的汇编代码来理解一些低层的东西。
而现在才发现,其实delphi的控件世界里,同样是丰富多采。
应该说,以前感兴趣的是delphi是如何使得人们可以在它上面进行快速的,而现在发现的是人们在这个架构基础之上所开发出来的庞大的组件世界。
稍微尝到了一点快速开发带来的好处的同时,却让我有些迷惑了,以前所习惯的面向对象,三层架构到哪里去了呢?当然delphi语言绝对是个好语言,完整漂亮的面向对象支持,同时又不失底层,编译出来程序执行速度与c\c++不相上下。然而现在这功能强大的控件,这拖拉组件设置属性的开发方式却让面向对象变得有点晦涩起来。组件虽然强大却无法解决所有问题,对于中小型项目,单纯的拖拉组件确实是让开发速度提高很多,但是对于逻辑稍微复杂点的应用,过多的依赖于拖组件、简单得在设计时设置属性、只在事件里面写代码的开发方法只会适得其反。应为用这种方法‘堆砌’出来的系统整个从界面到数据都紧密得耦合在一起,难以维护。(对于小应用,如果需求有变,如果是小变化的话,换几个组件,修改几个属性就能解决很多问题,就算有了大变,方正开发也不难,推倒重来又有何妨?)大型的应用却不能这么潇洒了。还得选择面向对象,还得自己设计业务组件,把各层分离出来。
需要自己写很多代码,尤其需要编写类,包括类之间的关系的时候就得看IDE的好坏了。delphi的IDE(这里只说d7)怎么说好呢,对于习惯visual studio6的人来说,delphi绝对是好太多了,但是对于习惯visual stdio 2003的人,比如我,重新回到delphi7确实是比较郁闷的事情。当然了delphi7仍然是win32下最好的开发工具了。delphi2005还没用过,希望.net下的delphi仍然是最好的。
borland的面向对象技术是公认的nb,做出来的产品,设计出来的框架都是精品。作为最好的R&D开发环境,当然是Borland公司的高手使用复杂的面向对象技术构建出来的,只是R&D开发方式本身却与面向对象多少有点相悖,这确实是件郁闷的事情。当然这只能说明R&D开发方式并非银弹。
希望尽早玩上delphi2005。
至于现在~~~还是尽量在R&D与面向对象之间找到平衡点。
不早了,睡觉了。 [em]e6[/em]
主要是以前没有什么东西做呢,对delphi的研究方向也就比较流于理论、低层。比如他的对象机制,消息机制,还有就是vcl的架构等,还时常需要查看编译后的汇编代码来理解一些低层的东西。
而现在才发现,其实delphi的控件世界里,同样是丰富多采。
应该说,以前感兴趣的是delphi是如何使得人们可以在它上面进行快速的,而现在发现的是人们在这个架构基础之上所开发出来的庞大的组件世界。
稍微尝到了一点快速开发带来的好处的同时,却让我有些迷惑了,以前所习惯的面向对象,三层架构到哪里去了呢?当然delphi语言绝对是个好语言,完整漂亮的面向对象支持,同时又不失底层,编译出来程序执行速度与c\c++不相上下。然而现在这功能强大的控件,这拖拉组件设置属性的开发方式却让面向对象变得有点晦涩起来。组件虽然强大却无法解决所有问题,对于中小型项目,单纯的拖拉组件确实是让开发速度提高很多,但是对于逻辑稍微复杂点的应用,过多的依赖于拖组件、简单得在设计时设置属性、只在事件里面写代码的开发方法只会适得其反。应为用这种方法‘堆砌’出来的系统整个从界面到数据都紧密得耦合在一起,难以维护。(对于小应用,如果需求有变,如果是小变化的话,换几个组件,修改几个属性就能解决很多问题,就算有了大变,方正开发也不难,推倒重来又有何妨?)大型的应用却不能这么潇洒了。还得选择面向对象,还得自己设计业务组件,把各层分离出来。
需要自己写很多代码,尤其需要编写类,包括类之间的关系的时候就得看IDE的好坏了。delphi的IDE(这里只说d7)怎么说好呢,对于习惯visual studio6的人来说,delphi绝对是好太多了,但是对于习惯visual stdio 2003的人,比如我,重新回到delphi7确实是比较郁闷的事情。当然了delphi7仍然是win32下最好的开发工具了。delphi2005还没用过,希望.net下的delphi仍然是最好的。
borland的面向对象技术是公认的nb,做出来的产品,设计出来的框架都是精品。作为最好的R&D开发环境,当然是Borland公司的高手使用复杂的面向对象技术构建出来的,只是R&D开发方式本身却与面向对象多少有点相悖,这确实是件郁闷的事情。当然这只能说明R&D开发方式并非银弹。
希望尽早玩上delphi2005。
至于现在~~~还是尽量在R&D与面向对象之间找到平衡点。
不早了,睡觉了。 [em]e6[/em]