人跟人的能力千差万别,所以写出来的代码质量,肯定是不同的。有的人,写一个小逻辑,可能需要100行,而有的人,可能仅仅需要10行。代码永远会有Bug,在这方面没有好只有更好。高效是程序员必须作到的事情,无错是程序员一生的追求。复用、分而治之、折衷是代码哲学的基本思想。模块化与面向对象是实现高效无错代码的方法。高效无错代码需要思想与实践的不断反复。

  如何做到代码高效无错,提高代码质量的方法有哪些?又有哪些经验和技巧呢?本文整理自知乎网,与开发者们一起探讨该话题。如果您有好的想法,欢迎在评论中列出。

  一起来看下编程界各位大牛如何为您支招:

  互联网评论员 孙立伟:

  1、代码风格和规范

  多看看网上的一些代码规范,仔细思考一下制定这些规范的出发点是什么。例如Oracle(前SUN)公司的代码规范oracle.com,Google的代码规范googlecode。

  2、学习佳实践

  在编码中遇到的各种大大小小的问题,首先不是自己去“闭门造车”的冥思苦想,多用Google,搜搜是否已经有现成的解决方案。

  3、阅读的开源代码

  网上有很多的开源项目,针对你自己项目中遇到的问题,找找类似的开源项目,学习、研究,重要的是变成自己的东西。

  4、学好英语

  英语是目前所有编程语言的基础。你的文件名、类名、方法名、变量名都是需要一个好的英语基础才能够起得合适。任何的业务逻辑,都需要你使用以英语为基础的计算机语言表达出来。英语不好,你的代码永远看起来不专业。

  互联网评论员 钟声:

  靠牛人带,靠代码Review,应该对初期成长很有帮助,不过受环境限制较大,可能并不是所有人都能有这种幸运。多看启发思路的书,多看开源代码,用辅助工具(lint、findbugs等),都是靠谱的答案,不过我还想补充一点,在这些标准答案背后,更重要的一点:要充分利用自己的敏感,当看着一堆需要自己负责的成品、半成品代码时,哪怕只有一点点的不爽,千万不要忍,而要勇敢地??改!大刀阔斧、大张旗鼓!

  其实道理并不复杂:重复的东西可以合并,零散的逻辑可以集中。让一切保持有条不紊,只需要拆解得当。此时,那些曾经空洞的理论开始具现化,节省了思考的时间,也成为了顺手的工具。“DRY”一个词可以说明白原则,“技术债务”一个词可以争取到重构时间。

  DSP软件程序员 冯旭辉:

  1、学会模块分割是提高代码质量的关键

  人的精力有限,人的经验也有限,但把问题拆分成子问题,形成一个个独立的模块,这可以让我们的精力更加集中于某个细微的问题,无论如何,都会大大提高模块的编写质量。

  2、要从一开始养成一个良好的编码风格

  比如函数的头部注释的格式,函数间的分割方式,函数组的分割方式形成固定的程式。并使用编辑器的宏功能预先做好快捷方式,需要时直接生成出来这些格式化文本。

  3、需要使用CVS之类的源代码版本管理工具

  每完成一个小功能改进或者bug修复提交,这样下来,你的工作是逐步精化。

  4、使用诸如MantisBT之类的bug管理工具

  对每一个出现的bug,修改完成后,进行详细的处理过程描述,以备今后再犯类似的错误。

  还有些码农认为,应该多读好的代码,比如开源框架的代码的写法,在保证功能、效率的基础上思考结构,回顾下自己编写的代码;反复评审代码,规范代码、改进实现方案的写法。同时还应该尽一切努力减少代码重复,将代码分解为自成体系,可测试的小块 ;后测试,测试,再测试。

  当然这还需要有很强的毅力。

  以上这些观点,您赞同吗?