程序编码
程序设计语言
程序设计语言:用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言有3个方面的因素,即语法、语义和语用。语法表示程序的结构或形式,亦即表示构成语言的各个记号之间的组合规律,但不涉及这些记号的特定含义,也不涉及使用者。语义表示程序的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但不涉及使用者。
分类
1、可分为汇编语言和高级语言
(1)机器语言、汇编:第一、第二代计算机用
(2)高级语言:第三代和第四代语言
2、从语言的内在特征看,高级语言可分为系统实现语言、静态高级语言、块结构高级语言和动态高级语言四大类
(1)系统实现语言
(2)静态高级语言
(3)块机构高级语言
(4)动态高级语言
语言的选择
1、应用领域的不同决定选择的语言
2、系统用户的要求决定
3、可以使用的编译程序
4、程序员的经验和知识
5、软件可移植性的要求
6、当工程规模很大时,又没有完全合适的语言,可编一个专用的语言
7、算法和计算复杂性、软件的可靠性
8、数据结构的复杂性,软件的可维护性
9、效率的考虑
选择原则
1、最少工作量原则
2、最少技巧性原则
3、最少错误性原则
4、最少维护性原则
5、减少记忆为原则
结构化程序设计
结构化程序设计:是进行以模块功能和处理过程设计为主的详细设计的基本原则。结构化程序设计是过程式程序设计的一个子集,它对写入的程序使用逻辑结构,使得理解和修改更有效更容易。
1、在编写程序时,强调使用几种基本控制结构
2、在程序设计过程中,尽量采用自定向下和逐步细化的原则,由粗到细,一步步展开
结构化设计原则
1、使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑
2、选用的控制结构只准许有一个入口和一个出口
3、复杂机构应该用基本控制结构进行组合嵌套来实现
程序设计风格
1、源程序文档化,表现在标识符的命名、安排注释、程序的视觉组织)
2、数据说明,如:常量说明、变量说明、数组说明、公用数据块说明、所有的文件说明等。
3、语句结构,语句构造力求简单、直接,不能为了片面追求效率而使语句复杂化
4、输入/输出方法,这个与用户的使用直接相关,输入和输出的方式和格式应当尽可能的方便用户的使用
程序设计质量评价
1、正确性
2、结构清晰性
3、易修改性
4、易读性
5、简单性
程序复杂性度量
这里主要指模块内程序的复杂性
1、代码行度量法:统计一个程序模块的源代码行数目,并以源代码行数作为程序复杂性的度量。
2、McCabe度量法,又称环路复杂性度量,是一种基于程序控制流的复杂性度量方法。环路复杂度取决于程序控制结构的复杂度,环路复杂度是可加的,McCabe建议,对于复杂度超过10的小程序,应分成几个小程序,以减少程序的错误。
计算代码量
1、程序量的计算
2、程序量比率
3、程序员工作量
4、程序的潜在错误