软件开发:从结构化到面向对象的演进与设计策略
1. 软件开发的简要历史
计算机软件开发已经历经了数十年。软件的目的是帮助人们完成各种任务,它被应用于文档处理、会计、图片处理等众多任务、流程和方法中,这些应用被称为应用程序。
最初,人们认为创建应用程序的最佳方式是将所有功能集中在一起。但当应用程序包含多个主要任务时,将其拆分为多个单元(程序)更为合适,每个单元负责一个主要任务。程序的排列方式通常是从开始到结束依次执行,这被称为过程式或顺序执行代码。
然而,软件具有可变性,这与本质上不可改变的硬件和带有逻辑开关的固件不同。软件的执行并非完全按照连续步骤进行,分支概念的出现使得程序可以根据条件选择下一步执行的操作。随着软件灵活性需求的增加,分支变得越来越复杂,修改应用程序时需要在代码中进行大量搜索以确定执行路径。
为了管理分支,软件结构化的概念应运而生。它将分支之间的步骤进行分组,形成逻辑组织,每个分支引用一个组。这还创建了模块,即孤立的软件片段,并对其进行分类,不同模块可以完成相同类型的任务。虽然这显著减少了搜索工作,但修改应用程序时仍需在多个代码片段中进行更改,并且要确保改进一个功能时不影响其他功能。
为了更好地管理分支和变更,将这些组组织成功能单元的概念逐渐流行起来,这就是面向对象的概念。这些功能单元被称为对象,这种功能分组被称为面向对象编程。这种组织方式有助于集中代码变更,使各个部分更加独立,功能变更更加自包含和安全。
2. 面向对象编程的现状与挑战
面向对象编程的原则使软件开发过程变得更简单,但这些原则本身在教学中常常被复杂化。这导致在尝试用现成方法应对各种可能情况时,开发变得越来越困难,而不
超级会员免费看
订阅专栏 解锁全文
176万+

被折叠的 条评论
为什么被折叠?



