zoukankan      html  css  js  c++  java
  • 《代码大全》阅读笔记-9-伪代码编程过程

    一个类的创建过程可以千变万化,但基本上都会以下图所示的顺序发生:

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

    • 测试先行开发/测试驱动开发:在任何代码之前先要写出测试用例
    • 重构:通过对代码进行一系列保持语义的变换和调整来提高代码的质量。
    • 契约式设计:认为每一段程序都具有前条件和后条件,用断言来注解并验证前条件和后条件
    • 东拼西凑

    核对表(伪代码编程过程)

    • 是否检查过已满足所有的先决条件?
    • 定义好这个类要解决的问题了吗?
    • 高层次的设计是否足够清晰?能给这个类和其中的每一个子程序起一个好名字吗?
    • 考虑过该如何测试这个类及其中每一个子程序了吗?
    • 关于效率的问题,你主要从稳定的接口和可读的实现这两个角度考虑吗?还是主要从满足资源和速度的预期目标的角度考虑过呢?
    • 在标准函数库或其他代码库中寻找过可用的子程序或者组件了吗?
    • 在参考书籍中查找过有用的算法了吗?
    • 是否用详尽的伪代码设计好每一个子程序?
    • 你在脑海里检查过伪代码吗?这些伪代码容易理解吗?
    • 关注过那些可能会让你重返设计的警告信息了吗?(比如说关于全局数据的使用,一些看上去更适合放在另一个类或子程序中的操作等)
    • 是否把伪代码正确地翻译成代码了?
    • 你反复使用伪代码编程过程了吗?有没有根据需要把一些子程序拆分成更小的子程序?
    • 在作出假定的时候有没有对它们加以说明?
    • 已经删除掉那些冗余的注释了吗?
    • 你是否采取了几次迭代中最好的那个结果?还是在第一次迭代之后就停止了?
    • 你完全理解你的代码了吗?这些代码是否容易理解?

    要点

    • 创建类和子程序通常都是一个迭代的过程。在创建子程序的过程中获得的认识常常会反过来影响类的设计。
    • 编写好的伪代码需要使用易懂的英语/自然语言/人话,要避免使用特定编程语言中才有的特性,同时要在意图的层面上写伪代码(即描述该做什么,而不是要怎么做)。
    • 伪代码编程过程是一个行之有效的做详细设计的工具,它同时让编码工作更容易。伪代码会直接转化为注释,从而确保了注释的准确性与实用性。
    • 不要只停留在你所想到的第一个设计方案上。反复使用伪代码作出多种方案,然后选出其中最佳的一种方案开始编码。
    • 每一步完成后都要检查你的工作成果,还要鼓励其他人帮你来检查。这样你就会在投入精力最少的时候,用最低的成本发现错误。
  • 相关阅读:
    电脑蓝屏的原因及解决方法
    或将引爆第四次工业革命!一张图带你看完人工智能大事件
    sata2.0和sata3.0的区别
    15款顶级的开源人工智能工具推荐
    解读神秘而又强大的百度人工智能计算机
    人工智能让程序员自危:码农大批失业
    电脑开机黑屏只有光标在闪怎么办
    关于XSS漏洞的简介以及分类
    SSD知识
    centos7下安装docker(15.5容器跨主机网络--flanneld)
  • 原文地址:https://www.cnblogs.com/taceywong/p/8713562.html
Copyright © 2011-2022 走看看