第二章:可读性
Last updated
Last updated
任何傻瓜都能写出计算机能理解的代码,而优秀的程序能写出人能够理解的代码。
--- Martin Fowler 《重构: 改善既有的代码设计》P1
有一个非常普遍的误解,认为 Kotlin 的设计是简洁的,它其实不是,还有更简洁的语言,例如我所知最简洁的语言是 APL,下面代码是 John Conway 用 APL 实现的 “Game of Life”:
你的第一个想法可能会是:“哇,真短呀”,然后你可能会意识到你的键盘上没有这些字符。 有很多这样的语言,例如同样的程序在 J 语言是这样的:
这两种语言都非常的简洁,这一特点使得它们成为代码高尔夫比赛的冠军。 这也让它们难以阅读,让我诚实地说:即使是对那些经验丰富的 APL 开发人员(这个世界上可能只有少数人)来说,理解这个程序在做什么和怎么做也是一个挑战。
Kotlin 从来没有想要非常简洁,它被设计成可读的,与其他流行语言相比,它是简洁的,但这是因为 Kotlin 消除了许多干扰:样板代码、重复的结构。 这样做是为了帮助开发人员专注于重要的事情,从而使 Kotlin 更具可读性。
Kotlin 允许程序员设计干净而有意义的代码和 api,它的功能可以让我们隐藏或凸显任何我们想要的东西。本章是讨论关于如何明智地使用这些工具,该章作为导论,并提供了一组通用建议,也将引入可读性的概念,我们也会在本书的其余部分中提到。特别是在第二部分:抽象的设计中,我们将深入类与函数设计的相关主题。\
让我们从一个关于可读性的更抽象的条目开始,它将引入一般的问题。