编程方法 - 确定解决方案
通常,编码被认为是任何软件开发过程中最重要的部分。 然而,编码只是过程的一部分,如果系统设计正确,实际上可能会花费最少的时间。 在设计系统之前,必须为当前的问题确定解决方案。
设计系统时首先要注意的是,系统分析师最初可能会提出多个解决方案。 但最终的解决方案或产品只能是一种。 对需求收集阶段收集的数据进行深入分析有助于得出独特的解决方案。 正确定义问题对于找到解决方案也至关重要。
当面临多个解决方案的问题时,分析师会借助流程图、数据流图、实体关系图等视觉辅助工具来深入理解每个解决方案。
流程图
流程图是通过符号和图表说明系统中的工作流程和数据流的过程。 它是帮助系统分析师确定问题解决方案的重要工具。 它直观地描述了系统的组件。
![流程图](/programming_methodologies/images/flowcharting.jpg)
这些都是流程图的优点 −
视觉表示有助于理解程序逻辑
它们充当实际程序编码的蓝图
流程图对于程序文档非常重要
流程图是程序维护过程中的重要辅助工具
这些是流程图的缺点 −
复杂的逻辑无法用流程图来描述
如果逻辑或数据/工作流程发生任何变化,流程图必须完全重新绘制
数据流图
数据流图或 DFD 是通过系统或子系统的数据流的图形表示。 每个流程都有自己的数据流,并且有层次的数据流图。 0级显示整个系统的输入和输出数据。 然后系统被分解为模块,1级DFD分别显示每个模块的数据流。 如果需要,模块可以进一步分解为子模块并绘制 2 级 DFD。
伪代码
系统设计完成后,交给项目经理实施,即编码。 程序的实际编码是用编程语言完成的,只有接受过该语言培训的程序员才能理解。 然而,在实际编码发生之前,程序的基本操作原理、工作流程和数据流是使用与要使用的编程语言类似的符号来编写的。 这种表示法称为伪代码。
这里是 C++ 伪代码的示例。 程序员只需将每条语句翻译成C++语法即可得到程序代码。
![伪代码](/programming_methodologies/images/pseudocode.jpg)
识别数学运算
所有对计算机的指令最终都以机器级别的算术和逻辑运算的形式实现。 这些操作很重要,因为它们 −
- 占用内存空间
- 花点时间执行
- 确定软件效率
- 影响整体软件性能
系统分析师试图识别所有主要的数学运算,同时确定手头问题的独特解决方案。