写代码的最高境界:能不写则不写、能少些则少些

jopen 10年前

        英文原文:Write Less Code——A mantra for the modern software developer.

本文是"Write Less Code"作者对 2012 的这篇文章进行重新修改,在经过两年的工作经验积累,再回过头来看 12 年这篇文章,作者有了新的思考和见解。

        在 2012 年的时候,笔者写过这样一篇文章:Write Less Code,在当时还不错,但是在那之后,我在 PageCloud 工作,两年之后,再回过头来看这篇文章,现在,带着两年的思考和经验(希望如此),对这篇文章重新修改。

        软件开发的基本真理就是写代码。不过最大谬论之一就是为工作而写代码。当我第一次开始写代码的时候就落入了这个陷阱。编写代码是一件很棒的事 情。敲打键盘让自己有成就感,就想正在完成自己的梦想。但是这些年,我学到的东西则更重要——作为软件开发者尽可能写更少的代码。

        别误会,我的理解,我们不应该将自己置身于编写代码,或者敲打让人难以理解的代码情境中。事实上,花一点时间思考,我们会发现,我们大多数的时间,都用来维护代码。编写更少的代码,而不是为自己创造更多的工作看起来像是一个相当好的主意。

        为什么?

        多看看,我的使用工具,使用的框架。我做的所有的事情,用的所有的工具,都是为了写更少的代码。使用工具为了减少代码中的错误,让你走更少的弯路。

        那么,为什么要写更少的代码呢?之前,我说你的工作是写更少的代码,而今看来,那时候,我是错的。实际上,你的工作是思考,是思考遇到的问题,找到一个可靠的方法并把它用到软件开发中去。开发软件的一个副产物就是我们不得不写代码来解决问题。

写代码的最高境界:能不写则不写、能少些则少些

        代码意味着结束

        代码没那么重要。我们喜欢说服自己,我们正在开始执行、并把我们的解决方案放入软件中。这样看来,代码既是一种方式也意味着结束。我们谈论自己 所用的编辑器,谈论我们最喜欢的编程语言,谈论使用环境。每个人都在谈论,享受自己的工作,没什么不好意思的。重点是你是否专注。代码很棒,但他也可能是 敌人。及时我们花很多时间去写,他也可能很脆弱,不够清楚,甚至不够稳定。

        这就是为什么我要说的"Write less code"。无论何时,我觉得这个项目或者代码块变得比想象中大、复杂,我就会想到"写更少的代码"。无论何时,我写了多少代码,甚至写了一页又一页,我重构他,我重写他,同时思考"写更少的代码"。

        有时候,如果不能写出简洁、干净的代码,对自己来说,写一堆代码就是很痛苦的事情。写更少的代码就是写干净清晰的代码。当你"节约代码"的时候,就意味着,你在写更少的代码,意味着你写代码的目的就是让他变得简洁。

        那么,我从中学到了什么?我认为写完代码就意味着结束,在软件开发中解决各式各样的问题就不可避免。所以多思考,重构、删除以前的老代码,并且使用更少代码编写新代码。

        不要犹豫,从今天开始,就这样做。

        载自:慧都控件网 / 译文:送给当代软件开发者的咒语:"Write Less Code"