伪代码编程有助于减少设计和编写文档所需的工作量,同时提高这两项工作的质量。

1、创建一个类和子程序的步骤的概述

  • 创建一个类的步骤

    • 创建类的整体设计
    • 创建类中的子程序
    • 复审并测试整个类
  • 创建子程序的步骤

    • 设计子程序
    • 检查设计
    • 编写子程序代码
    • 复审并测试代码

2、伪代码

伪代码这个术语是指某种用来描述算法、子程序、类或完整的程序的工作逻辑的、非形式的、类似于英语的记法。伪代码编程过程是一种通过书写伪代码而更高效地创建程序代码的专门方法。伪代码写好后,就可以依照它去生成代码了,同时还把伪代码变成了编程语言中的注释。

有效使用伪代码的指导原则:

  • 用类似隐喻的语句来精确的描述特定的操作
  • 避免使用目标编程语言中的语法元素
  • 在本地的层面上编写伪代码
  • 在一个足够低的层次上编写伪代码

作为进行详细设计的工具,很难有其他方法能与使用伪代码相媲美。使用伪代码有以下好处:

  • 使得评审更容易
  • 支持反复迭代精化的思想
  • 使变更更加容易
  • 能使给代码做主食的工作量减到最少
  • 比其他形式的设计文档更容易维护

3、通过伪代码编程过程创建子程序

  • 设计子程序

    • 检查先决条件
    • 定义子程序要解决的问题

      • 这一个子程序要隐藏的信息
      • 传给这个子程序的各项输入
      • 从该子程序得到的输出
      • 在调用程序之前确保有关的前条件成立
      • 在子程序将控制权交回调用方程序之前,确保其后条件的成立
    • 为子程序命名
    • 决定如何测试子程序
    • 在标准库里搜寻可用的功能
    • 考虑错误处理
    • 考虑效率问题
    • 研究算法和数据类型
    • 编写伪代码
    • 考虑数据
    • 检查伪代码
    • 在伪代码中实验一些想法,留下最好的想法(迭代)
  • 编写子程序的代码

    • 写出子程序的声明
    • 把伪代码转变成高层次的注释
    • 在每条注释下面填充代码
    • 检查代码是否需要进一步分解

      有时候,几行伪代码展开之后形成了大量的代码,可以采取以下方法:

      • 把注释下的代码重构成一个新的子程序
      • 递归地应用伪代码编程过程
  • 检查代码

    • 在脑海里检查程序中的错误
    • 编译子程序

      最大限度地发挥编译子程序所产生的功效:

      • 把编译器的警告级别调到最高
      • 使用验证工具
      • 消除产生错误消息和警告的所有根源
    • 在调试器中逐行执行代码
    • 测试代码
    • 消除程序中的错误
  • 收尾工作

    • 检查子程序的接口
    • 检查整体的设计质量
    • 检查子程序中的变量
    • 检查子程序的语句和逻辑
    • 检查子程序的布局
    • 检查子程序的文档
    • 除去冗余的注释
  • 按照需要重复上述步骤

4、伪代码编程过程的替代方案

  • 测试先行开发

    在任何代码之前先要写出测试用例。

  • 重构

    通过对代码进行一些列的语义变换和调整来提高代码的质量

  • 契约式设计

    每一段代码都具有前条件和后条件

  • 东拼西凑

更多有关《代码大全 2》的读书笔记,请关注 :
http://tabalt.net/blog/code-complete-2-reading-notes/

本文链接:http://tabalt.net/blog/cc2-the-pseudocode-programming-process/,转载请注明。