java

如何写伪代码

2019-07-20  本文已影响52人  Qiuty

为什么要使用伪代码

好处:

1.辅助开发,可以站在一较高层次上编写代码,而不陷入语法细节, 代替流程图。
2.可以直接将伪代码变成注释,省去编写注释的时间
3.代码变更时,修改伪代码,比修改几十行代码来的容易

要求:

  1. 避免使用目标语言的语法元素。
  2. 在意图层面上编写伪代码 。更加接近解决问题的核心,不落入语法细节。
  3. 在一个足够低的层次上编写伪代码 。便于伪代码转化成代码。

什么时候需要伪代码:

当编写代码困难时,可以 降低代码有复杂度,降低代码实现难度。不随意的编写伪代码,保证伪代码足够的简洁,方便审查代码漏洞。
力求代码足够的接近底层。使伪代码能够快速转化成代码。

案例:产生4位数的验证码

    //产生安全码,使用表驱动法
    public void 伪代码() {
    //        1.定义一个空的字符变量,保存安全码
    //        2.创建安全码的表,使用数组
    //        3.循环4次产生四个在指定范围的数字(为数组的下标),查表,添加到字符变量
    //        4.输出字符变量
    }

在大脑中运行伪代码,一次编写就成功。而不是直接运行代码,调试错误。
检查伪代码,是否简洁,是否能够完成目标。

填写代码

  @Test
    public void 伪代码() {
        //产生安全码,使用表驱动法

        //1.定义一个空的字符变量,保存安全码

        String safeCode="";
        //        2.创建安全码的表,使用数组
        char [] safeCodeList={'a','b','c','d','e','f','d','h','i','g','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};

//        3.循环4次产生四个在指定范围的数字(为数组的下标),查表,添加到字符变量

        for (int i = 0; i <4 ; i++) {
            safeCode+=safeCodeList[(int)(Math.random()*26)];

        }
//        4.输出字符变量
        System.out.println(safeCode);
//
//

编写完成后
审查代码:如果代码填充时候,一行伪代码其实现代码过多。应当考虑创建子程序,保证伪代码的简洁,同时细化伪代码。
代码出现错误时:
首先调试代码是否按照伪代码执行。
其次检查伪代码是否有漏洞,修改伪代码,保证逻辑可行,重新编码。

附录:表驱动法:可以大大减少逻辑判断,简化代码。参考书籍《代码大全2》

上一篇下一篇

猜你喜欢

热点阅读