【软工】程序编程

一、程序设计语言

  1. 机器语言、汇编:第一第二代计算机用
  2. 高级语言:同一个问题,高级语言编码可比汇编少3~7倍,按软件工程的分类,语言的发展大致分为4代、3阶段

这里写图片描述

1、语言的选择

1 领域

这里写图片描述

2系统用户要求:最熟悉的语言,操作方式
3可以使用的编译程序:有现成的编译就选择现成的
3程序员的经验和知识:熟悉程度
4软件可移植性要求
5当工程规模很大时,同时又没有完全合适的语言,可编一个专用的语言
6算法与计算复杂性,软件的可靠性
7数据结构的复杂性,软件的可维护性
8效率(处理器, 存储,输入和输出)
9了解语言的发展前景

2、原则

  1. 最少工作量原则
  2. 最少技巧性原则
  3. 最少错误原则
  4. 最少维护原则
  5. 减少记忆原则

3、总原则

  1. 先求正确后求快
  2. 先求清晰后求快
  3. 求快不忘保持程序正确
  4. 保持程序整洁以求快
  5. 不要因效率而牺牲清晰

4、好程序的标准

  1. 易于测试和调试
  2. 易于维护
  3. 易于修改
  4. 设计简单
  5. 高效率

二、程序化程序设计

  1. 使用几种基本控制结构
  2. 由粗到细,自顶向下,逐步细化原则

1、原则

  1. 使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑
  2. 选用的控制结构只准许有一个入口和一个出口
  3. 复杂结构应该用基本控制结构进行组合嵌套来实现

三、程序设计风格

1、源程序文档化

  1. 标识符的命名
  2. 安排注释
  3. 程序的视觉组织

2、数据说明

  1. 规范化(有利测试、拍错,便于查找和维护)
  2. 有序化(输入参数在前,输出在后,整型参数在前,实型参数在后,其他参数在后)
  3. 注释说明复杂的数据结构(固有特点)

3、语句结构

  1. 简单、直接
  2. 先求正确后求快
  3. 避免设定中间变量
  4. 尽可能使用库函数,优化
  5. 避免转移,保持可读性,则不必用GO TO语句
  6. 尽量减少使用“否定”条件
  7. 模块化,利用信息隐蔽保证每个模块独立性
  8. 大程序,要分块编写测试,然后在集成
  9. 不要修补不好的程序,要重新编写

4、输入/输出方法

  1. 输入格式力求简单一致,自由格式输入
  2. 输出加必要说明,给出提示在线帮助,发生错误时,能迅速恢复正常

四、程序复杂性度量

1、代码行度量法:

统计一个程序模块的源代码行数目,并以源代码行数作为程序复杂性的度量

2、McCabe度量法:

基于程序控制流的复杂性度量方法

评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值