《编写可读性代码的艺术》读书笔记 第二部分 简化循环和逻辑

第二部分:简化循环和逻辑

第七章把控制流变得易读

把条件、循环以及其他对控制流的改变做的越“自然”越好,运用一种方式使读者不用停下来重读你的代码。

1、 条件语言中参数的顺序。【比较的左侧:“被询问的”表达式,它的值更倾向于不断变化;比较的右侧:用来做比较的表达式,它的值更倾向于常量】

2、 If/else语句块的顺序

a)      首先处理正逻辑而不是负逻辑。If(debug)而不是if(!debug).

b)      先处理掉简单的情况。这种方式可能还会使得if和else在屏幕之内都可见。

c)       先处理有趣的或者可疑的情况。

3、 ?:条件表达式。默认情况下都用if/else,只有在最简单的情况下使用三目运算符。

4、 避免do/while循环

5、 从函数中提前返回。从函数中提前返回没有问题,而且常常很受欢迎。

6、 慎用goto

7、 最小化嵌套。

a)      通过提早返回来减少嵌套,return。

b)      减少循环内的嵌套,continue。

 

第八章拆分超长的表达式

1、引入额外变量,又称“解释变量”。Usrname= line.split(‘:’)[0].strip() if(usrname == “root”)xxxx

2、总结变量,用一个短很多的名字来代替一大块代码,这个名字更容易管理和思考。

3、不要滥用短路逻辑。

4、找到更优雅的表达方式。

5、拆分巨大的语句。

6、做相似的复杂的事情,定义宏。

 

第九章变量与可读性

问题:

         变量越多,就越难全部跟踪他们的动向。

         变量的作用域越大,就需要跟踪它的动向越久。

         变量改变的越频繁,就越难以跟踪它的当前值。

1、 减少变量。

a)      没有价值的临时变量,去除。

b)      减少中间结果。

c)       减少控制流变量

2、 缩小变量的作用域。把定义下移。

3、 只写一次的变量更好。操作一个变量的地方越多,越难确定它的当前值。

------------------from 《the art of readable code》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值