很长时间以来,Powerbuilder(以下简称PB)开发工具,以其较低的技术门槛,与数据库的良好集成,较高的开发效率,一度成为应用类系统开发工具中的佼佼者;与此同时,许多开发人员投入到PB的怀胞。
PB之所以有很高的开发效率,不得不说它的Datawindow(以下简称DW),一个DW集成了数据的管理和展现,包括检索、排序、过滤、复制、存储、报表等等。稍微有点其它编程语言开发经验的人,都很容易上手。
也不知道是PB开发人员接触到的图书有关,还是PB最初是面向开发两层应用的缘故,见到的大部分开发人员都喜欢在可视化对象里直接编写代码,比如编写窗口函数,或者干脆在事件里直接写业务逻辑代码,代码风格上是数据库处理代码,界面控制代码和业务逻辑代码完全混合在一起,没有一点分层的处理。这样编写代码的好处是显而易见的,不用考虑代码的通用性,编写速度自然就快,工作效率就“高”了。然合恰恰是这种代码,随着系统生命周期的增长,越来越成为BUG的来源,尤其是相类似的业务在不同的可视化对象里使用的时候,在业务需求发生变化的情况下,很容易产生某些代码遗漏修改的情况。