OOP,风险和缺陷又在哪里呢?barton所说的需求变化,答案应在软工模式中去寻找,oop仅是思考的方法和软工模式的前提。在C++或java程序员而言,oop应该不是一个真正有难度的问题,因为开发的方式强制我们,必须这样思考,必须更熟练更自然的以这种方式思考。
Delphi里面,OOP相形而言更复杂一些,正因为Rad的开发方式,是兼顾的困难。界面与业务逻辑的分离、业务逻辑和数据库的分离,前者应该容易解决,后者在Delphi里是个几乎无解的问题,诸如bold,小如instantobject、objectsight、depo等等,均是这些方面努力的结果,刘亿先生认为下策的东西。很长时间探索之后,感觉若使用Delphi的话,对象持久性框架,对象与关系数据库的映射,显得有些学究气。值得提到的是instantobject,在实现对象持久化框架之余,又令数据敏感控件能继续应用,可惜是小公司产品,不敢贸然的应用。
另外,关系数据库--对象映射,几乎不可避免的带来程序运行效率的问题。在无法舍弃Rad特性比如数据敏感控件之类的情形下,承认Vcl数据集封装的事实在这种学究气的OOP中,需要勇气。这或许是刘亿先生务实的地方。
不过,从我们公司的实践来看,对复杂系统,Rad是否真的能带来开发速度上的优势,委实不敢深信。早期蜘蛛网似的数据库、不断变化的需求,程序员在不同的按钮背后寻找事件代码,探寻一些变化将历经多次的整体漫游,这就是Rad。所以何不大胆的进一步设想,将
这些短期利益的Rad特性弃如敝履?
Delphi在目前真正的优势,我以为是在作为高效率的跨平台的原生代码开发工具,在.net平台推出之后,这一点更加明显,所谓rad,或者将来会有不同一些的理解。而那些与企业级开发背道而驰,伴随着系统的复杂性在自身更动的灵活、维护的困难方面愈发举步维艰的现实,更令我坚信Rad仅是业余爱好者或者被工期逼迫到走突无路的小项目的选择。
刘亿先生这本书,从选题而言,确实是国内第一本Delphi+oop的实务性专著,期待公司的小伙子们能很快看到
barton事实上在“界面、数据库、业务逻辑”三者中曾经花费很大精力,他的一些贴子看起来也深有启发,但这些零星的东西,是需要缘分才能有所感悟的,任何书籍或者都是一家之言,文法风格若有些不同,鬼谷子之类,呵呵,在我看来只是表达的变化,若于文字及
哲理全无修炼,恐怕也很难成为编程的大家。事实上,barton可以看出牵强,前提必是明白
了牵强的去处,又何必低估其他同仁的阅读能力?
很讨厌那种死气沉沉的催眠曲一般的行文风格。
另外:“参透Delphi”一书,阅读的兴趣似乎不足,可能仅于表达有关。