如何编写更易读的代码建议?

4
你有哪些关于编写更易懂代码的技巧或建议?
我最近一直在维护一些缺乏结构且格式不佳的代码,感到有些沮丧。因此,我想提出一系列编写更易懂代码的指南。
无论是什么语言,任何建议都可能有所帮助。
祝好。

6
这应该是cw。 - bimbom22
3
我认为对于特定的编程语言和编码风格方面,已经有很多次涉及到这个问题的讨论了。而且,在像这些问题中更普遍的情况下也进行了讨论,例如:http://stackoverflow.com/questions/114342/what-are-code-smells-what-is-the-best-way-to-correct-them, https://dev59.com/I3RC5IYBdhLWcg3wP-dh, http://stackoverflow.com/questions/1852808/what-should-i-do-to-improve-my-code-style-of-programming, http://stackoverflow.com/questions/20564/what-constitutes-beautiful-code. - gnovice
13个回答

9

2
很有趣。您的亚马逊链接被转换为指向带有?tag=stackoverfl08-20结尾的亚马逊的rads.stackoverflow.com链接。SO开发人员真聪明! - Omar

6

谢谢你的推荐,我已经有了《Effective Java》和《程序员修炼之道》,但是我之前从未听说过《代码整洁之道》,这是一个很好的资源。 - Jose Diaz

5
  1. 命名 - 函数、变量、类等...好的名称可以使代码易读。名称应该是描述性和清晰的,并确保如果事物的目的发生变化,则更新名称。

  2. 简化复杂函数 - 我的经验法则是,如果一个函数/方法无法同时显示在屏幕上,则可能做得太多,需要分解它。

  3. 可读性优于聪明 - 使用语言的晦涩特性会让你赢得懂行人的赞赏,但使用易读且持续可维护的代码,将获得更多人的认可,即使五年后。

我还能说很多,但这是一个不错的开始。


4
"如果你需要超过3个缩进层级,那么你的程序已经出了问题,需要修复" - Linus Torvalds

3

试试这些:

  • 尽量减少嵌套 - 控制块嵌套越少,代码阅读起来就越容易。
  • 使用临时变量 - 虽然它们有时会使您的代码看起来笨重,但它们也可以极大地提高可读性。
  • 分解大函数 - 将大型函数分解为小型、单一职责的函数,这样可以轻松理解和测试。

1
并对临时变量使用有意义的名称。 - Mr Fooz

3
  1. 保持DRY - 不要重复自己
  2. 保持方法简洁
  3. 边写代码边测试 - 单元测试有助于设计、作为文档,并保持代码正常工作。
  4. 仔细命名方法和变量 - 一个经过深思熟虑的名称比注释更好。

2

有许多代码风格指南和启发式规则,但确保可读性的最佳方法是当一个人编写代码时,另一个人应该阅读它,然后批评它。


而且阅读它的人甚至可以是6个月后的同一个人。 - john-jones

2

看看 Google Web Toolkit 使用的 代码风格

确实很好


2
编写易于维护的代码的关键是遵循一些基本的代码设计原则:
  1. 单一职责原则 - SRP - 一个类必须实现一个职责。
  2. DRY - 几乎与SRP相反 - 不要重复自己 - 换句话说,不要让多个类实现同一个职责(因为这会导致相同代码的重复)。
  3. 将应用程序划分为垂直片段,并将每个片段称为模块。提出具有明确依赖关系的模块化结构。公布项目的模块结构,并强制团队遵守它。显然没有循环依赖关系。在构建过程中使用像maven或apache ivy这样的依赖管理工具。
  4. 采用AOP、装饰器等策略来实现非功能性需求作为水平需求的方法。
有了这些措施,大部分代码都将变得易于维护。以上每个点本身都相当深入。我非常喜欢这本书
查看博客等,了解这些内容。
祝一切顺利!

2

既然您已经在维护大型代码库,拥有一个好的IDE并强制执行标准格式对于所有人都是有益的。但将现有代码转换为更易读的形式远不止如此。

建议从书籍《重构:改善现有代码的设计 - Martin Fowler、Kent Beck、John Brant、William Opdyke、Don Roberts》开始。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接