1. 编码之前想一想
用 10 分钟,20 分钟甚至 30 分钟的时间来想想你需要什么,想想什么样的设计模式(如果有的话)适合你将要编码的东西。真的要好好想想,你会很庆幸“浪费”了那几分钟,当你不得不更改或添加东西到代码中,而这只花费了你 30 分钟的时间而不是 5 小时。
2. 注释你的代码
说真的,没有什么比两个月后检查自己的代码,却不记得它用来干什么更糟糕的了。注释所有重要的内容,当然那些显而易见的就免了吧。
3. 写干净的代码
错落有致。使用空格。根据功能模块化你的代码。阅读 Robert C. Martin 写的《Clean Code》,非常有帮助。此外,遵循代码约定/标准(如 Java Code Conventions),尤其如果是共享的代码。
4. 重构
没有人喜欢用那些超级长的方法。这通常(几乎总是)意味着你混杂了功能。用更易于管理的方法分离代码。还能使得代码更可重用。
5. 不要复制粘贴代码
如果你有两个或两个以上相同的代码块,那么你可能做错了什么。阅读第 4 条。
6. 使用有意义的名称
虽然命名 int 变量为“elligent”或 char 为“mander”是很好笑;但是,这样的名称并不能说明变量是用来做什么的。
7. 测试代码
测试,测试,测试,还是测试。测试你的代码。不要等到已经做完程序之后再来测试,否则当你发现一个巨大的 bug,却不知道它来自于哪里来的时候,你会追悔莫及。
7b.自动化测试通常都是有价值的。它还有助于节省大量重测试和回归测试的时间。
7+1.学会调试
在我的第一年,我习惯于管理事情而不知道如何去做,并且每次遇到问题的时候就 println。大错特错。有时候,我甚至找不到 bug,而且检查“丢失的”println 浪费时间。
用 10 分钟,20 分钟甚至 30 分钟的时间来想想你需要什么,想想什么样的设计模式(如果有的话)适合你将要编码的东西。真的要好好想想,你会很庆幸“浪费”了那几分钟,当你不得不更改或添加东西到代码中,而这只花费了你 30 分钟的时间而不是 5 小时。
2. 注释你的代码
说真的,没有什么比两个月后检查自己的代码,却不记得它用来干什么更糟糕的了。注释所有重要的内容,当然那些显而易见的就免了吧。
3. 写干净的代码
错落有致。使用空格。根据功能模块化你的代码。阅读 Robert C. Martin 写的《Clean Code》,非常有帮助。此外,遵循代码约定/标准(如 Java Code Conventions),尤其如果是共享的代码。
4. 重构
没有人喜欢用那些超级长的方法。这通常(几乎总是)意味着你混杂了功能。用更易于管理的方法分离代码。还能使得代码更可重用。
5. 不要复制粘贴代码
如果你有两个或两个以上相同的代码块,那么你可能做错了什么。阅读第 4 条。
6. 使用有意义的名称
虽然命名 int 变量为“elligent”或 char 为“mander”是很好笑;但是,这样的名称并不能说明变量是用来做什么的。
7. 测试代码
测试,测试,测试,还是测试。测试你的代码。不要等到已经做完程序之后再来测试,否则当你发现一个巨大的 bug,却不知道它来自于哪里来的时候,你会追悔莫及。
7b.自动化测试通常都是有价值的。它还有助于节省大量重测试和回归测试的时间。
7+1.学会调试
在我的第一年,我习惯于管理事情而不知道如何去做,并且每次遇到问题的时候就 println。大错特错。有时候,我甚至找不到 bug,而且检查“丢失的”println 浪费时间。