《Clean Code代码整洁之道》第一章

序言
小处诚实非小事这句丹麦谚语不只是教我们重视小处,更教我们小处要诚实。这意味着对代码诚实、对同僚坦承代码现状,最重要的是在代码问题上不自欺。
我们就是一群代码猴子,上窜下跳,自以为领略了编程的真谛,可惜,当我们抓着几个酸桃子,得意洋洋的坐在树枝上,却对自己造成的混乱熟视无睹,那堆“可以运行”的乱麻程序,就在我们的眼皮底下慢慢腐坏。
正文

整洁代码

要有代码

有人说我们正临近代码的终结点。
扯淡!我们永远抛不掉代码,因为代码呈现了需求的细节,在某些层面上,这些细节无法被忽略或抽象,必须明确之,将需求明确到机器可以执行的细节程度,就是编程要做的事,而这种规约正是代码。
代码是我们最终用来表达需求的那种语言。我们可以创造各种与需求接近的语言。我们可以创造帮助把需求解析和汇整为正式结构的各种工具,然而,我们永远无法抛弃必要的精确性——所以代码永存。

糟糕的代码

为什么要写糟糕的代码呢?
可能是为了赶时间,或许是因为觉得自己干好所需的时间不够,假使花时间整理代码,老板可能会大发雷霆。或许也可能是因为自己不耐烦了,期望早点结束;也可能想的是自己等会在去整理。
勒布朗法则:稍后等于永不

混乱的代价

1、如果跟别人合作,会被某些人糟糕的代码绊倒,或者被严重的拖后腿
2、初期快,后期慢
3、随着混乱的增加,团队生产力会持续下降,趋向于0.
4、如果管理层的人在增加新人到项目中,可是新人并不熟悉系统的设计,所以只会制造更多的混乱

态度

为什么好的代码会这么快的变质成糟糕的代码?理由有很多,并不能完全归咎于我们自己的不专业或者是自作自受。
比如说 大多数经理想要知道的是进度,而你需要知道的是去护卫代码。
假如你是一位医生,病人请求你在给他做手术前别洗手,因为那会花太多时间,你会照办吗?本该是病人说了算;但你绝对会拒绝他,为什么?因为你比他更了解疾病和感染的风险,你如果按照病人说的办,就是一种不专业的态度。
同理,程序员遵从了不了解混乱风险的经理的意愿,也是不专业的做法。

整洁代码的艺术

如果你不明白整洁对代码有何意义,尝试去写整洁代码就毫无所益
写整洁代码很像是绘画,多数人都知道一幅画是好还是坏。但能分辨优劣并不表示懂得绘画。也就是说能分辨整洁代码和肮脏代码,也不意味着会写整洁代码!

什么是整洁代码

有多少程序员,就有多少定义
Bjarne Stroustrup说:
我喜欢优雅和高效的代码。代码逻辑应当直截了当,叫缺陷难以隐藏;尽量减少依赖关系,使之便于维护;依据某种分层战略完善错误代码;性能调至最优,省的引诱别人做没规矩的优化,搞出一堆混乱,整洁的代码只做好一件事
“优雅”:外表或举止上令人愉悦的优美和雅观;令人愉悦的精致和简单。
Bjarne认为整洁的代码读起来令人愉悦,读这种代码就像减到手工精美的音乐盒或者设计精良的汽车一般,让你会心一笑。
糟糕的代码引发混乱!别人修改糟糕的代码时,往往会越改越烂
Grady Booch 说:
整洁的代码简单直接。整洁的代码如同优美的散文。整洁的代码从不隐藏设计者的意图,充满了干净利落的抽象和直截了当的控制语句。
“干净利落的抽象”:果断决绝,就事论事,没有犹豫或不必要的细节。
Ron的言论:
近年来,我开始研究贝克的简单代码规则,差不多也都琢磨透了,简单代码,依其重要顺序

  • 能通过所有测试
  • 没有重复代码‘’
  • 体现系统中的全部设计理念
  • 包括尽量少的实体,比如类、方法、函数等。
    -33

你可能感兴趣的:(《Clean Code代码整洁之道》第一章)