软件工程(6) CSDN花神生涯
软件编码编码目的把模块的过程性描述翻译为用选定的程序设计语言书写的源程序(源代码)编码依据概要设计和详细设计说明文档编码任务理解概要设计和详细设计说明书遵循编码原则和风格进行翻译,形成源代码程序设计语言的分类程序设计语言是人与计算机通信的媒介机器语言→汇编语言→ 高级语言基础语言基础语言是通用语言,适用性强,应用面广,历史悠久FORTRAN(公式翻译):使用最早的高级语言,主要用于科学和工程计算,
文章目录
软件编码
编码目的
把模块的过程性描述翻译为用选定的程序设计语言书写的源程序(源代码)
编码依据
概要设计和详细设计说明文档
编码任务
理解概要设计和详细设计说明书
遵循编码原则和风格进行翻译,形成源代码
程序设计语言的分类
程序设计语言是人与计算机通信的媒介
机器语言→汇编语言→ 高级语言
基础语言
基础语言是通用语言,适用性强,应用面广,历史悠久
- FORTRAN(公式翻译):使用最早的高级语言,主要用于科学和工程计算,缺点是数据类型欠
- COBOL(面向商业的公用语言),主要用于商业,使用接近自然语言的语句,缺点是程序不够紧凑,计算功能弱,编译速度慢
- BASIC语言:交互式语言,它广泛应用微型计算机系统中
- ALGOL语言:它是所有结构化语言的前驱
结构化语言
作为基础语言的ALGOL语言是结构化语言的基础,衍生出了
- Pascal语言:功能强,数据类型丰富,是一门自编译语言,是第一个系统体现结构化程序设计概念的高级语言
- C语言:最初作为UNIX操作系统的主要语言开发,现已成功移植到多种微型与小型计算机上。它可移植性好,具有高级语言的优点,又具有低级语言的许多特点
- Ada语言:美国国防部大力扶持开发,主要适用于适时,并发和嵌入式系统的语言,在Pascal基础上开发,功能更强,更复杂,它是一个充分体现软件工程思想的语言
面向对象语言
C++语言
C++增加了数据抽象,继承,封装,多套性,消息传递等概念实现的机制,又于c语言兼容,从而是他成为一种灵活高效,可移植的面向对象的语言
Java语言
不再支持运算符重载,多继承级许多易于混淆和较少使用的特性,增加了内存空间自动垃圾收集的功能,使程序员不必考虑内存管理问题
程序设计语言选择标准
理想标准
- 为了使程序容易测试金额维护以减少软件开发成本,选用的高级语言应该有比较理想的模块化机制,以及可读性好的控制结构和数据结构
- 为了便于调试和提高软件的可靠性,语言的特点应该使编译程序能够尽可能的发现程序中错误
- 为了降低软件开发和维护的成本,选用的语言应该有良好的独立编译机制
实用标准
- 待开发软件的应用领域
- 系统用户要求
- 软件的运行环境
- 软件开发人员的知识
- 软件的可移植性要求
程序设计风格
- 编程风格:在不影响性能的前提下,有效地编排和组织程序以提高可读性和可维护性
- 良好的程序设计风格可以减少编码的错误,减少读程序地时间,从而提高软件地质量和开发效率
编码遵循五方面规划?
程序内部地文档
- 标识符地选取→选取意义直观地名字,选取名字适当
- 增加注解→注解是软件开发人员于源程序地读者之间的重要的通信方式之一,注解分为序言性注解和功能性注解
👉序言性注解:描述模块的整体功能,主要算法,接口特点,重要数据含义以及开发简史
👉功能性注解:主要描述地是程序块,而不是解释每行代码。适当空行,空格,使读者容易区分,注解内容正确
- 好的程序布局→应当适当利用阶梯形式,是程序逻辑结构清晰易读
数据说明
- 数据说明地次序应该标准化
- 多个变量名在一个语句说明,按字典顺序
- 复杂的数据结构,应加注解说明用程序设计语言实现这个数据结构的方法和特点
语句构造
原则:
- 不要为了节省空间,把多个语句写在同一行
- 避免复杂的条件测试,尤其减少对“非”条件的测试
- 避免使用循环嵌套和条件嵌套语句
- 利用括号使运算次序清晰直观
- 变量说明不要遗漏,变量的类型,长度,存储及初始化要正确
输入输出
规则:
- 对所有输入数据进行校验,保证输入有效
- 检查输入项重要组合合法性
- 保持输入格式简单
- 使用数据或文件结束标记,不能要求用户自己指定输入项或记录数
- 人机交互输入时,要详细说明可用的选择范围和边界值
- 程序设计语言对输入和输出格式有严格要求时,应保持输入格式与输入语句的要求一致
- 输出报表的设计符合用户要求,输出数据尽量表格化,图形化
- 给所有的输出数据加标志,并加以必要的 注解
效率(和存储容量)
效率只要是指处理机工作时间和内存容量这两方面的利用率
原则:
- 效率是属于性能的要求,因此应该在软件需求分析阶段确定效率的要求
- 良好的设计可以提高效率
- 提高程序的效率和好的编码风格要保持一致,不应该一味追求程序效率
效率问题:
👉代码效率
- 直接由详细设计阶段良好的数据结构与算法决定,在把详细设计结果用程序来实现时,注意以下原则:
- 编码之前,简化算术和逻辑表达式
- 仔细研究代码中包含的多重嵌套循环,尽可能将某些语句和表达式放在循环体外面
- 避免使用多维数组,指针和复杂的表格
- 尽量使用执行时间短的算数运算
- 避免使用混合使用的数据类型
- 尽量使用算数表达式和布尔表达式
- 尽量选用等价的效率高的算法
👉存储效率
软件的存储器效率与操作系统的分页性能直接有关,要注意减少页面调度,选用有紧缩存储器特性的编译程序
👉输入/输出的效率
用户和计算机之间的通信时通过输入/输出来完成的
- 对所有的输入/输出操作都应该有缓冲,有利于减少通信的开销
- 对辅助存储器(如磁盘),选择尽可能简单大可行的访问方式
- 对辅助存储其输入/输出,以块维单位进行存取
- 任何不易理解的,对改善输入/输出关系不大的措施时不可取的
花神博客生涯之软件工程(5)结束了哦~
接下来会持续更新(⊙o⊙)!
更多推荐
所有评论(0)