目前,人和计算机通信仍需使用人工设计的语言,也就是程序设计语言。所谓编码,就是把软件设计的结果翻译成计算机可以“理解和识别”的形式一一用某种程序设计语言书写的程序。作为软件工程的一个步骤,编码是设计的自然结果,因此,程序的质量主要取决于软件设计的质量。但是,程序设计语言的特性和编码途径也会对程序的可靠性、可读性、可测试性和可维护性产生深远的影响。
(1)程序设计语言。编码的目的是实现人和计算机的通信,指挥计算机按人的意志正确工作。程序设计语言是人和计算机通信的最基本工具,程序设计语言的特性不可避免地会影响人的思维和解决问题的方式,会影响人和计算机通信的方式和质量,也会影响他人阅读和理解程序的难易程度。因此,编码之前的一项重要工作就是选择一种怡当的程序设计语言。
(2)程序设计风格。在软件生存期内,开发者经常要阅读程序。特别是在软件测试阶段和维护阶段,编写程序的人员与参与测试、维护的人员要阅读程序。因此,阅读程序是软件开发和维护过程中的一个重要组成部分,而且读程序的时间比写程序的时间还要多。这就要求编写的程序不仅自己看得懂,而且也要让别人能看懂。20世纪70年代初,有人提出在编写程序时,应使程序具有良好的风格。程序设计风格包括4个方面:源程序文档化、数据说明、语句结构和输入/输出方法。应尽量从编码原则的角度提高程序的可读性,改善程序的质量。
(3)程序复杂性度量。经过详细设计后每个模块的内容都已非常具体,因此可以使用软件设计的基本原理和概念仔细衡量它们的质量。但是,这种衡量毕竟只能是定性的,人们希望能进一步定量度量软件的性质。定量度量程序复杂程度的方法很有价值,把程序的复杂度乘以适当的常数即可估算出软件中故障的数量及软件开发时的工作量。定量度量的结构可以用于比较两个不同设计或两种不同算法的优劣,程序定量的复杂程度可以作为模块规模的精确限度。
(4)编码效率。主要包括:
程序效率:程序的效率是指程序的执行速度及程序所需占用的内存空间。一般来说,任何对效率无重要改善,且对程序的简单性、可读性和正确性不利的程序设计方法都是不可取的。
算法效率:源程序的效率与详细设计阶段确定的算法的效率直接相关。在详细设计翻译转换成源程序代码后,算法效率反映为程序的执行速度和对存储容量的要求。
存储效率:存储容量对软件设计和编码的制约很大。因此要选择可生成较短目标代码且存储压缩性能优良的编译程序,有时需要采用汇编程序,通过程序员富有创造性的努力,提高软件的时间与空间效率。提高存储效率的关键是程序的简单化。
I/O效率:输入/输出可分为两种类型,一种是面向人(操作员)的输入/输出,另一种是面向设备的输入/输出。如果操作员能够十分方便、简单地输入数据,或者能够十分直观、一目了然地了解输出信息,则可以说面向人的输入/输出是高效的。至于面向设备的输入/输出,主要考虑设备本身的性能特性。
整理不易动动你发财的小手点个“在看”哦!
您的支持是我坚持的动力,谢谢
领取专属 10元无门槛券
私享最新 技术干货