Hi,SwiftGG 翻译组启用了新的域名:swiftgg.team今后翻译组的各项活动将会在新域名下开展,不要错过哦!

作者:Erica Sadun,原文链接,原文日期:2015-10-28
译者:小铁匠Linus;校对:千叶知风;定稿:千叶知风

最近有个人发 Email 问我:“好代码是怎样炼成的”。之前,我身体有点不舒服,所以我漫无边际的说了下。现在好多了,所以我想分享一下以下这些想法,因为我觉得这些对于这次重要的讨论来说是一个有趣的起点。

当时,我写道:

  • 好代码并不只是可以编译而已,它还会沟通。它会和现在的你交谈,也会和以后维护代码的你交谈。它对于你的团队和任何外部来查看的人来说都是可以被理解的。

  • 好代码对可靠性和可测试性的要求胜过聪明的小技巧。如果需要清晰的表明自己的意图和结果,好代码会更倾向于使用一个或多个额外的步骤来表达。

  • 好代码也考虑其使用程度,一段代码一次跑一百万遍和只跑一遍的要求是不同的,就好比在树林里的一棵树和孤零零的一棵树那样。

  • 好代码即使被分解了也可以成为合理的单元,而不是大规模的单一的实现。

  • 好代码不仅仅是实现一次或两次,而且还要审查和重构。这才有可能让它成为最好的和最健壮的实现。

  • 好代码会考虑到全球化,并提供给不同文化的潜在用户。添加国际化以及相关的可访问性,这些真的是代码层面的事情,而不是嘴上说说的马后炮而已。

  • 好代码不仅仅考虑今天具体运行在什么环境上,也考虑如何适应这些可能随时间变化的环境。

以上是我想到的,你对我关于这个“好代码是怎样炼成的”话题列出的清单有什么想添加、删除、修改的?期待看到你们的想法。

更新

Seivan Heidari 建议添加:好代码会在作为 API 为外面调用时,不提供内部的实现细节。

Anonymous 建议添加:好代码是浑然天成的。好代码可以照你需要的样子执行,且能被按时交付,其余的都是扯蛋哈哈。

Dave DeLong 建议添加:好代码会让读的人产生敬畏,并使读的人受到启发从而也去写自己的好代码。

Paul Cantrell 建议添加:好代码会注意权衡。它会根据工程来权衡,而不是按照绝对的教条。它也不会让工具或技术成为组内状态标记(in-group status markers)。

Rainer Brockerhoff 建议添加:好代码可以被很轻松的重用(即使是在几年之后),也能只用几行代码来进行扩展或改编。

本文由 SwiftGG 翻译组翻译,已经获得作者翻译授权,最新文章请访问 http://swift.gg

文章目录