本节书摘来自华章计算机《基于模型的软件开发》一书中的第2章,作者:[美]H. S.莱曼(H. S. Lahman)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
第2章 对象技术
真正危险的不是机器开始像人类一样去思考,而是人类的思维如同机器。
——Sydney J.Harris
结构化开发彻底改变了软件开发的方式,为软件构造提供了一种系统的开发方法,并且与更加成熟的工程科学过去经常使用的技术一致。结构化开发大大加快了大型应用开发的速度。尽管结构化开发是生产力的福音,但是20世纪70年代后期其弱点也明显暴露出来。这些弱点在第1章中已经讨论过了。
与此同时,OO方法论者注意到OO范式有一个有趣的副作用,那就是OO范式的应用更易于维护。因此1980年左右OOA/D的重点发生了微妙的转向。在此之前的方法将重点主要放在与新的OO程序设计语言(OOPL)兼容地表达设计上。人们发明了OOPL构造的图形表示法,方法学转而表达这些表示法中的基本设计理念。但是到了1980年左右,方法论者开始着重研究如何使用OOA/D去解决结构化开发的具体问题。
本章其余部分在执行摘要层面对OO范式的发展进行概述。首先,我们选择一些OO范式构造理念中的基本元素进行介绍,然后讨论针对结构化开发问题的具体机制和技术,最终目标是为OO范式解决SD和黑客时代出现的问题奠定基础。OO范式的主要特性将在后面的章节中详细讨论。