WHAT?

最简单的控制流:即按照先后顺序放置语句与语句块

WHY?

尽管组织直线型的代码是一个简单的任务,但代码结构上的一些微妙之处还是会对代码质量、正确性、可读性和可维护性带来影响

HOW?

必须有明确顺序的语句

  • 使依赖关系变得非常明显
  • 使子程序名能突显依赖关系
  • 利用子程序参数表明依赖关系
  • 用注释说明
  • 用断言/错误处理代码来检查依赖关系

顺序无关的语句

  • 使代码易于自上而下的阅读,将相关的代码组织到一起
// bad
MarketingData marketingData;
SalesData salesData;
TravelData travelData; travelData.computeQuarterly();
salesData.computeQuarterly();
marketingData.computeQuarterly(); salesData.computeAnnual();
marketingData.computeAnnual();
travelData.computeAnnual(); marketingData.print();
slaesData.print();
travelData.print(); // good
MarketingData marketingData;
marketingData.computeQuarterly();
marketingData.computeAnnual();
marketingData.print(); SalesData salesData;
salesData.computeQuarterly();
salesData.computeAnnual();
slaesData.print(); TravelData travelData;
travelData.computeQuarterly();
travelData.computeAnnual();
travelData.print();

最新文章

  1. 【干货分享】流程DEMO-离职流程
  2. Linux系统下输出某进程内存占用信息的c程序实现
  3. Windbg用法详解
  4. 烂泥:centos安装及配置DHCP服务器
  5. 【05】了解C++默默编写并调用那些函数
  6. Day12 - 堡垒机开发
  7. HDU_2044——蜜蜂走蜂房,递推
  8. 如何理解jQuery中的ajaxSubmit方法
  9. python3和python2的区别部分
  10. 不定期更新的CSS样式设置
  11. php 网页版 ftp 小工具
  12. 转:Oracle 执行计划(Explain Plan) 说明
  13. git---远程仓库版本回滚
  14. go语言之进阶篇字符串操作常用函数介绍
  15. tomcat启动报错:serializer.jar (系统找不到指定的文件。)
  16. QrenCode : 命令行下生成二维码图片
  17. Java中static代码块,{}大括号代码块,构造方法代码块执行顺序!
  18. U盘做启动盘后,恢复原始容量
  19. matlab学习笔记---(1)
  20. SQL连接的方法

热门文章

  1. 每日学习心得:未定义的命名空间前缀"xsd"问题和<%%>、<%=%>、<%$%>、<%@%>的区别
  2. CSS3 Media Queries(响应式布局可以让你定制不同的分辨率和设备)
  3. NoSQL之基础篇
  4. [原]网络库libevent在Visual Studio中的使用方法
  5. 剑指offer系列37----数据流中的中位数
  6. VoLTE、呼叫等待(保持)
  7. 像装软件一样装系统 Win8下怎么装Win7
  8. sql server中的左连接与右连接的简便写法
  9. PLSQL_Oracle Trigger触发器的基本概念和用法
  10. ubuntu配置DNS