本文译自 40 Tips that will change your coding skills forever,仅用于学习,不作商业用途
在这篇总结里,我将会列举一些技巧。阅读起来很快,但是应用得很好可能要花费一辈子的时间。
- 把大块代码分解成小函数。
- 如果你结束一天的工作还没有解决问题。关机把它留到第二天。不要一直想着它。
- YANNI 原则:不要编写超出被要求的内容。不要期望未来,尽可能快的做好现在的事情。为了解决当前问题,进行必要的编码。
- 你不需要了解所有事情,所有存在的框架。最有效的事情是有好的基础。子开始学习一个框架和学习基础例如SOLID原则或者编写简洁代码之前深入了解编程语言。
- KISS:”Keep it simple, stupid” or “Keep it stupid simple”(保持愚蠢且简单) 是一种设计原则:表明大多数系统在保持简单而不是复杂的情况下工作的最好。虽然这是合乎逻辑的,但有时很难实现。
- 不要过分思考。
- 如果你在一个问题或者
bug
上纠结太长时间,走走,一会再回去。通常,从办公室到卫生间的路上会想出问题的最佳解决方案。 - 学习编写可用的测试和学习去做
TDD
。TDD
是一种软件开发流程依赖一个非常短的开发循环的重复:编写一个测试,执行所有的测试看是否有测试失败,编写代码,执行测试,重构代码,重复。 - 首先解决问题,然后编码。不要在还没有搞懂做什么之前,就开始编码。
- 不要记忆代码,而是要理解逻辑。
- 如果要复制粘贴
stack overflow
的解决方案,确保你已经理解了。学习更好地使用Stack Overflow
- 如果你想学习,那就去练习。编写一些例子,运行起来。因为仅仅阅读是不够的。(原文:
If you want to learn something, practice. Make examples and make them work because read about something is not enough.
) - 时常学习其他人的代码,让其他人学习你的代码。结对编程和代码审查是个很好的想法。
- 不要重复造轮子。
- 你的代码是最好的文档。
- 了解怎样
google
东西。为此,你需要有经验和大量的阅读知道你要找的东西。 - 你的代码在未来需要你自己或其他人维护,所以写代码时要考虑到读者,而不是试图成为最聪明的人。使你的代码读起来就像是阅读一个故事。
- 使用
google
去解决你的错误最好的方式是复制粘贴。 - 永不放弃,最后,总会以这样或那样的方式去解决。总有一些难过的日子,但终会过去。
- 休息,休息还是休息。解决问题最好的方式是有一个放松的大脑。
- 学习使用 软件设计模式。软件设计中的设计模式是通用问题的解决方案。每个模式就像是一幅蓝图,你可以自定义该蓝图已解决代码中常见的设计问题(不要重复造轮子)。
- 使用集成工具,尽可能多的自动化。
- 练习
code kata
(代码招式)。一个code kata
是一个编程训练,通过练习和重复帮助程序开发者提升他们的技能。 - 面向接口编程,而不是实现。依赖注入是必需的。可以查看
SOLID
原则。 - 重构-测试-重构。
Refactoring
是一种技术,用来重组现有代码,操作,优化内部结构而不改变外部行为。 - 当你需要的时候,寻求帮助。不要浪费时间。
- 熟能生巧。
- 尽管有时评论能帮助你,不要过多关注。他们很可能是过时的。
- 了解你的开发环境,在一个强力的足够的环境上投资,比如
IntelliJ
- 重用组件。
- 开发一个
web
应用是,考虑移动优先和相关的因素(原文:associated power
),以及带宽限制。 - 不要过早优化或者重构。尽可能快地开发出一个小型的,可用的产品是更重要的。
- 不要选择效率低下的,捷径去节省几分钟时间。每次你编码的时候,尽你最大努力。
- 遵循文档标准。
- 用户不是懂技术的人。当你开发你的
UI
时,要把这点考虑进去。 - 在使用源代码控制系统:像
Github
或者bitbucket
时,做小且频繁的git
提交。 - 使用日志比调试代码更好。在所有的关键部分使用日志。
- 编码时要始终如一。如果你使用一种编码风格,总是使用相同的。如果你与其他人在一起工作,与团队中的所有人使用相同的风格。
- 不要停止学习,但不是学习更多的新的编程语言或者框架,把注意力集中在软件开发基础上。
- 最后,保持耐心和热情去做事。