【软工视频】第五章程序编码

简介: 【软工视频】第五章程序编码

程序设计语言分类

汇编语言和高级语言两类

高级语言可分为系统实现语言;静态高级语言;块结构高级语言;动态高级语言

选择语言的原则:1最少的工作量原则;2最少技巧性原则;3最少错误原则4最少维护原则;5减少记忆原则
总原则

先求正确在求快;先求清晰后求快;求快不忘保持程序正确;保持程序猿整洁以求快;不要因效率而不清晰

好程序标准:易于测试和调试;易于维护;易于修改;设计简单;高效率

结构化程序设计:

(1)在编写程序时,强调使用几种基本控制结构(2)在程序设计过程中,尽量采用自定向下和逐步细化的原则,一步步展开
主要原则:使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑;选用的控制结构只允许有一个入口和出口;复杂结构应用基本控制结构进行组合嵌套来实现


数据说明

数据说明的次序应当规范化:使数据属性容易查找,也有利于测试排错

说明语句中变量安排有序化

应该对过程和函数的形参排列有序(输入参数在前输出参数灾后;整形参数在前,实行参数在后其他参数在后)

使用注释说明复杂数据结构


语句结构

力求简单直接,不能为了片面追求效率而使语句复杂化


输入和输出信息是与用户的使用直接相关的。输入和输出的方式和格式应当尽可能方便用户使用

程序设计质量评价

一、正确性。

1、程序中没有语法错误;

2、程序运行时没有发现明确的运行错误;3、程序中没有不适当的语句;

4、用有效的测试数据,得到程序的正确结果;5、用无效的测试数据,得到程序的正确结果;

6、用任何可能的数据,使程序在运行时得到正确的结果。

二、结构清晰性

1、是否用三种结构化格式表示程序的控制逻辑

2、是否有一个入口,一个出口

3、是否严格控制GOTO语句

三、易修改性。

四、易读性。

五、简单性。

程序复杂性度量

程序复杂性主要指模块内程序的复杂性

代码行度量法:方法的基本考虑是统计一个程序模块的源代码行数目,并以源代码行数作为程序复砸性的度量

McCabe度量法:又称环路复杂性度量,是一种基于程序控制流的复杂性度量方法


相关文章
|
6月前
|
Ubuntu NoSQL 编译器
在Ubuntu 20.04上构建RISC-V和QEMU环境
以上的步骤只是开始,RISC-V的世界里有无数的未知等待你去探索。加油,勇敢的探险家。
381 18
|
11月前
|
存储 JSON 开发工具
三、HarmonyOS NEXT应用开发:ArkTS工程目录结构(Stage模型)
本文介绍了HarmonyOS NEXT应用开发中ArkTS工程的目录结构(Stage模型),包括AppScope、entry、hvigor、oh_modules等主要目录及其作用。重点解析了entry目录下的src > main > resources目录结构,详细说明了base、限定符目录和rawfile的作用,以及如何引用资源文件。
640 1
|
机器学习/深度学习 人工智能 算法
【机器学习】基于YOLOv10实现你的第一个视觉AI大模型
【机器学习】基于YOLOv10实现你的第一个视觉AI大模型
1015 0
element Carousel 走马灯 一次轮播3张图片(整理)
element Carousel 走马灯 一次轮播3张图片(整理)
element Carousel 走马灯 一次轮播3张图片(整理)
|
Java 编译器
JavaSE学习之--继承和多态(一)
JavaSE学习之--继承和多态
109 0
|
机器学习/深度学习 存储 数据采集
|
Shell Linux Docker
最新 Docker 基于centos7.x 的安装
最新 Docker 基于centos7.x 的安装
188 0
最新 Docker 基于centos7.x 的安装
|
IDE Java 测试技术
Java代码覆盖率利器JaCoCo基本概念详解
Java代码覆盖率利器JaCoCo基本概念详解
1182 0
Java代码覆盖率利器JaCoCo基本概念详解
|
存储 BI
Opengl ES之纹理贴图
Opengl ES连载系列
207 0
|
数据采集 运维 Prometheus
如何在实际场景中使用异常检测?阿里云Prometheus智能检测算子来了
作者|梵登、白玙审核&校对:白玙编辑&排版:雯燕1 背景异常检测作为智能运维(AIOps)系统中基础且重要功能,其旨在通过算法自动地发现 KPI 时间序列数据中的异常波动,为后续的告警、自动止损、根因分析等提供决策依据。那么,我们该如何在实际场景中使用异常检测呢,而异常检测又是什么,今天我们就进行一次深入讲解。什么是异常检测?在一切开始前,我们首先需要了解什么是异常检测。异常检测是
671 0
如何在实际场景中使用异常检测?阿里云Prometheus智能检测算子来了