19、软件开发中的设计与模块化:原理、评估与实践

软件开发中的设计与模块化:原理、评估与实践

1. 软件开发设计概述

在软件开发过程中,常常会面临直接编写代码的巨大压力。对于简单程序,直接编码或许不会引发大问题,甚至在有人要求时,我们可能会匆忙绘制流程图或编写伪代码来解释。然而,在实际开发中,当程序复杂度超过学习编程时的简单示例,就需要在更高抽象层面规划程序,这就是设计的作用。

设计处于架构和实现之间。架构关注模块的组织和功能,设计聚焦单个模块的内部结构和构建方式,而实现则是具体的代码。例如,架构可能包含一个过滤传感器数据的模块,设计会描述过滤的具体方式,如使用缓冲区存储最近样本并求平均值;实现则处理诸如缓冲区名称、样本位置跟踪、高效计算平均值和避免数值溢出等细节。

1.1 良好设计的重要性

设计能帮助开发者在不陷入细节的情况下思考程序创建。以传感器数据过滤器为例,关键是确定过滤技术,而非循环中索引样本缓冲区的变量名。设计通过隐藏无关细节,让我们更好地理解程序,便于在投入大量时间编码前发现错误。

1.2 设计可能出现的问题症状
  • 抽象级别不当
    • 无设计 :只有实现代码,尽管代码注释有帮助,但不能替代真正的设计。
    • 设计过细 :设计中出现可执行代码行,如流程图中每个框都包含一行代码,这只是实现的图形化,并非真正的设计。
  • 实现后补设计
    • 自动生
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值