写点什么

外行在谈论流派,大师在讨论颜料

用户头像
顿晓
关注
发布于: 2021 年 05 月 01 日
外行在谈论流派,大师在讨论颜料

https://book.douban.com/subject/1743043/

第三章 油画颜料结合剂

3.1 脂油类

3.2 挥发性香精油

3.2.1 挥发性松节油

3.2.2 挥发性矿物油

3.2.3 半挥发性油

3.3 香脂

3.4 树脂

3.4.1 软树脂

3.4.2 硬树脂

3.5 蜡和动物脂


每个行业都有门道,编程行业的门道里就有软件设计的这些编码规范。

没看过《极限编程》的可能会对 extreme 翻译成极限这个词有误解,ta 表达的意思是一切好的实践都拿来用,有取其精华去其糟粕之意。用在此处就是说多讨论改进,避免只停留在方法的讨论上。

抛砖引玉

一个函数最多只能有一个 for 和 if。

再进一步,最多只在函数调用栈的最后一层使用 if 和 for;

最后一层之上的调用中出现 if 和 for,表明需要考虑代码设计的时候到了,也是进阶的机会。


for 和 if 是很底层的原语,直接用来描述复杂情况,会显得啰嗦,这时选用高阶语法能让复杂逻辑的表达精炼一些。

如碰到 for,首先考虑用集合来表达,集合提供的接口会迫使你思考,从而让逻辑表达变得清晰,阅读代码也变得容易。

如果非得使用 for,记住不要让 for 变成啥都往里扔的垃圾桶。

最后,为了避免破窗效应,还是尽量避免用 for。


补充个类比:卯榫结构

中国古代建筑靠卯榫结构搭建起框架,软件框架的设计也有结构点/洞之说,集合类型及接口就是这些部件,把整体和个体连接起来。

所以 map,filter,reduce,iterate,collect,fold 就是你要掌握的新语言,要熟悉到对一段逻辑编码时能脱口而出。


发布于: 2021 年 05 月 01 日阅读数: 9
用户头像

顿晓

关注

因观黑白愕然悟,顿晓三百六十路。 2017.10.17 加入

视频号「编程日课」 知识星球「俺的死党顶」

评论

发布
暂无评论
外行在谈论流派,大师在讨论颜料