代码整洁之道第三章-函数

3.1短小

函数第一规则是要短小,第二条规则是更短小。

程序中每个函数都只有两行、三行或四行长。每个函数都一目了然。每个函数都只说一件事。而且,每个函数都依序把你带到下一个函数。这就是函数应该达到的短小程度!

代码块和缩进:if语句、else语句、while语句等,其中的代码块应该只有一行。

3.2只做一件事

函数应该做一件事。做好这件事。只做这一件事。

3.3每个函数一个抽象层级

要想让函数做一件事,函数的语句都要在同一抽象层级上。

自顶向下读代码:向下规则
我们想要让代码拥有自顶向下的阅读顺序。'我们想要让每个函数后面都跟着位于下一抽象层级的函数,这样一来,在查看函数列表时,就能循抽象层级向下阅读了。我把这叫做向下规则。

3.4switch语句

对于switch语旬,我的规矩是如果只出现一次,用于创建多态对象,而且隐藏在某个继承关系中,在系统其他部分看不到,就还能容忍。当然也要就事论事,有时我也会部分或全部违反这条规矩。

3.5使用描述性的名称

如果每个例程都让你感到深合己意,那就是整洁代码。

大半工作都在于为只做一件事的小函数取个好名字。函数越短小、功能越集中,就越便于取个好名字。

3.6函数参数

最理想的参数数量是零(零参数函数),其次是一(单参数函数),再次是二(双参数函数),应尽量避免三(三参数函数)。有足够特殊的理由才能用三个以上参数〈多参数函数)-——所以无论如何也不要这么做。

3.7无副作用

普遍而言,应避免使用输出参数。如果函数必须要修改某种状态,就修改所属对象的状态吧。

3.8分割指令与询问

函数要么做什么事,要么回答什么事,但二者不可得兼。函数应该修改某对象的状态,或是返回该对象的有关信息。两样都干常会导致混乱。

3.9使用异常替代返回错误码

3.10别重复自己

3.11结构化编程

3.12如何写出这样的函数

 

posted @ 2021-03-30 11:26  利威尔  阅读(68)  评论(0编辑  收藏  举报