应用模块化技术
现实生活中的问题既复杂又庞大。如果开发整体解决方案,则会带来以下问题 -
编写、测试和实施一个大程序很困难
最终产品交付后进行修改几乎是不可能的
程序维护非常困难
一个错误就可能导致整个系统停止运行
为了克服这些问题,解决方案应该分为更小的部分,称为模块。将一个大的解决方案分解为更小的模块以便于开发、实现、修改和维护的技术称为编程或软件开发的模块化技术。
模块化编程的优点
模块化编程具有以下优点 -
由于每个模块都可以并行开发,因此可以实现更快的开发
模块可以重复使用
由于每个模块都是独立测试,因此测试更快、更稳健
整个程序的调试和维护更加容易
模块更小,复杂性更低,因此很容易理解
识别模块
识别软件中的模块是一项令人难以置信的任务,因为没有一种正确的方法可以做到这一点。以下是识别模块的一些指示 -
如果数据是系统最重要的元素,请创建处理相关数据的模块。
如果系统提供的服务多种多样,则将系统分解为功能模块。
如果一切都失败了,请在需求收集阶段根据您对系统的理解将系统分解为逻辑模块。
对于编码,每个模块必须再次分解为更小的模块,以便于编程。这可以再次使用上面分享的三个技巧并结合特定的编程规则来完成。例如,对于像 C++ 和 Java 这样的面向对象编程语言,每个类及其数据和方法可以形成单个模块。
分步解决方案
为了实现模块,必须逐步描述每个模块的处理流程。可以使用算法或伪代码来开发逐步解决方案。提供分步解决方案具有以下优点 -
任何阅读解决方案的人都可以理解问题和解决方案。
程序员和非程序员同样可以理解。
在编码过程中,每个语句只需转换为程序语句即可。
它可以成为文档的一部分并协助程序维护。
诸如标识符名称、所需操作等微观细节会自动计算出来
让我们看一个例子。
控制结构
正如您在上面的示例中所看到的,程序逻辑不必按顺序运行。在编程语言中,控制结构根据给定的参数做出有关程序流程的决策。它们对于任何软件来说都是非常重要的元素,必须在任何编码开始之前进行识别。
算法和伪代码可帮助分析师和程序员确定何处需要控制结构。
控制结构分为以下三种类型 -
决策控制结构
当要执行的下一步取决于某个标准时,将使用决策控制结构。这一条件通常是一个或多个必须计算的布尔表达式。布尔表达式的计算结果始终为“真”或“假”。如果条件为“真”,则执行一组语句,如果条件评估为“假”,则执行另一组语句。例如,如果语句
选择控制结构
当程序顺序取决于特定问题的答案时,使用选择控制结构。例如,一个程序为用户提供了许多选项。接下来要执行的语句将取决于所选的选项。例如switch语句、case语句。
重复/循环控制结构
当一组语句需要重复多次时使用重复控制结构。重复次数可能在开始之前已知,或者可能取决于表达式的值。例如for语句、while语句、do while语句等。
正如您在上图中所看到的,选择和决策结构在流程图中的实现方式类似。选择控制只不过是一系列按顺序执行的决策语句。
以下是程序中的一些示例,展示了这些语句如何工作 -