《代码大全》阅读笔记-9-伪代码编程过程

673170-20180404000554701-1562218232.png

673170-20180404000654037-2045842328.png

673170-20180404001245850-856811418.png

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

  • 测试先行开发/测试驱动开发:在任何代码之前先要写出测试用例
  • 重构:通过对代码进行一系列保持语义的变换和调整来提高代码的质量。
  • 契约式设计:认为每一段程序都具有前条件和后条件,用断言来注解并验证前条件和后条件
  • 东拼西凑
核对表(伪代码编程过程)
  • 是否检查过已满足所有的先决条件?
  • 定义好这个类要解决的问题了吗?
  • 高层次的设计是否足够清晰?能给这个类和其中的每一个子程序起一个好名字吗?
  • 考虑过该如何测试这个类及其中每一个子程序了吗?
  • 关于效率的问题,你主要从稳定的接口和可读的实现这两个角度考虑吗?还是主要从满足资源和速度的预期目标的角度考虑过呢?
  • 在标准函数库或其他代码库中寻找过可用的子程序或者组件了吗?
  • 在参考书籍中查找过游泳的算法了吗?
  • 是否用详尽的伪代码设计好每一个子程序?
  • 你在脑海里检查过伪代码吗?这些伪代码容易理解吗?
  • 关注过那些可能会让你重返设计的警告信息了吗?(比如说关于全局数据的使用,一些看上去更适合放在另一个类或子程序中的操作等)
  • 是否把伪代码正确地翻译成代码了?
  • 你 反复使用伪代码编程过程了吗?有没有根据需要把一些子程序拆分成更小的子程序?
  • 在作出假定的时候有没有对它们加以说明?
  • 已经删除掉那些冗余的注释了吗?
  • 你是否采取了几次迭代中最好的那个结果?还是在第一次迭代之后就停止了?
  • 你完全理解你的代码了吗?这些代码是否容易理解?
要点
  • 创建类和子程序通常都是一个迭代的过程。在创建子程序的过程中获得的认识常常会反过来影响类的设计。
  • 编写好的伪代码需要使用易懂的英语,要避免使用特定编程语言中才有的特性,同时要在意图的层面上写伪代码(即描述该做什么,而不是要怎么做)。
  • 伪代码编程过程是一个行之有效的做详细设计的工具,它同时让编码工作更容易。伪代码会直接转化为注释,从而确保了注释的准确性与实用性。
  • 不要只停留在你所想到的第一个设计方案上。反复使用伪代码作出多种方案,然后选出其中最佳的一种方案开始编码。
  • 每一步完成后都要检查你的工作成果,还要鼓励其他人帮你来检查。这样你就会在投入经历最少的时候,用最低的成本发现错误。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值