前言

来源:互联网 发布:tap建站 编辑:程序博客网 时间:2024/06/01 10:06

关于编写可维护的软件有一个流传已久的经典语录:

写代码的时候时刻想着最后维护你代码的是一个暴力的神经病患者,而且他还知道你住在哪里。

我是一个对格言不太感冒的人,但是这一句话触动了我。也许因为我的整个职业生涯都是在大公司写软件,至今尚未接手让我在某一时刻产生想要咒骂原始作者想法的代码。每一个人(亲爱的读者,当然也包括你)都在努力写易于维护的代码。当python变的流行,很多的人都认为其简洁特性,将很自然的把我们带向更易于维护的软件。可维护性并不是随着富有表现力语言的使用而产生的新特性。糟糕的Python代码和糟糕的C++,Perl,Java以及其它具有良好可读性的语言一样都是难以维护的。简洁代码并不简单。

那么,我们可以做些什么呢?因为要维护那些我们不理解的代码而辞职吗?在Twitter和The Daily WTF上谩骂那些我们不得不处理的令人作呕的代码吗?我们可以做什么来避免这种痛苦?

写地道的代码

经常是由于代码中有问题,我们才会去阅读别人的代码。风格良好的代码在这种情况下也能帮助我们。即使代码有错误,但书写是地道的,这更容易发现错误。风格良好的代码能够减小读者的认知负担。学习一门语言的风格之后,你将会花更少的时间思考例如“呃,他们为什么使用了一个namedtuple”这样的问题,而是将更多的精力放在理解代码的行为。

学习并且内化一门语言的风格之后,阅读志同道合开发者的代码,阅读速度会很快。你不用每一行都停下来,挣扎着记住之前看过的东西的同时努力弄明白这行代码。你将发现你几乎跳过了代码,思考事情就像:“打开一个文件,将其内容放到一个排序的列表里,以线程安全的方式生成一份报表。”当你对别人写的代码有这种层级的洞察,没有你找不到的bug,也没有你不能够改善的功能。

这听起来很棒,不是吗?想达到这种程度,只有一种方法:你必须掌握语言的风格并且使用它提升你的代码质量。写Python风格的Python。这些材料,刚开始是仓促的博客,现在是一本丰富的电子书。

我希望你认为这本书是有用的。这本书将是活的文档,会进行实时更新。如果你发现文中的错误或者难以理解的段落,请发邮件给我jeff@jeffknupp.com,如果你们修复了书中的bug或者是增加了文章的清晰度。在征得同意之后,我会将你们的名字添加到附录中的贡献者名单中。

原创粉丝点击