写出高质量代码的8条“军规”

简介: 写出简洁,易懂的程序是每个程序员追求的目标,怎样做到这一点,是否有规律可以遵循,我们一起来探讨

写出简洁,易懂的程序应该是每个程序员追求的目标,有人说程序不是给计算机用的吗,可以工作不就OK了吗?然而恰恰相反

程序是给写人看的

无论是什么样的语言,编译的也好,解释的也罢,最终实际执行的都是转换后的二进制代码。计算机是不需要看你写的源代码的。源代码是给你自己或者和你一样的人类程序员阅读的。程序的好坏决定着你们未来的命运。

程序维护的时间远长于创造他的时间

每个开发出来的计算机系统都被寄予厚望:尽可能长时间的存在于世。尽管他可能是某个实习生花一两个月写成的。而需求总在变化,很多时候都是在原有程序上的调整,甚至是修修补补。重写系统这件事情一直都是很危险的。从前有个著名的浏览器公司叫Netscape(网景公司),他们重写了自己浏览器的代码,后来。。。他们被另一款臭名昭著的浏览器IE6彻底打败了。所以,原始程序的质量决定后续的维护成本

那么怎样写出高质量的代码,需要注意哪些点呢,先从基本的做起

格式工整

每种语言都有自己的格式要求,每个公司也一样,现在有各种自动格式化工具,这点不难做到。

命名清晰

变量命名符合惯例,要表达清楚的含义,请谨慎使用a, b, c这种无意义的字母。这点和写文章一样,满篇小明、小红,一看就是小学生作文。

分离变化

需求总在变化,这是永恒的主题,如果我们清晰的知道哪个部分的程序可能在将来需要调整,那么把他们隔离起来。可以作为一个方法/函数,一个类,一个文件,或者数据库里的一个数据。

保持抽象

你的程序应该调用的是某一个接口,某一个协议。对于其他的程序知道的越少越好。不八卦别人的信息,可以避免程序像面条一样搅在一起。

不要重复(Don't repeat yourself/DRY)

“这个功能还不简单,拷贝一下改改不就好了”。建议你鄙视提出这个想法的朋友,拷贝一份,以后修改的工作量X2,现在的苦逼都是因为当年的偷懒。不管是代码也好,逻辑也好,都应该避免重复。

防呆设计(Don't make me think)

程序的接口应该简单而清晰,不要使用数量繁多而晦涩的参数。

保持简单(Keep it simple, stupid/KISS)

不要使用大段的复杂代码,每一段程序的职责尽量单一而明确。

按常理出牌

符合人类的思维规律,比如这是一个get读取函数,调用它一定不会出现修改、删除或者其他诡异的效果。

做好以上这些点差不多就能写出清晰而优秀的代码了,但程序是否优雅而高效还要取决于程序员的设计功力,这需要经验和积累。我们一起加油吧

目录
相关文章
|
7月前
|
存储 Java API
嵌入式工程师如何写好技术文档
嵌入式工程师如何写好技术文档
238 1
|
监控 测试技术
测试思想 什么是软件测试(摘录)
测试思想 什么是软件测试(摘录)
147 0
|
SQL 安全 大数据
【基础理论-WEB测试】面试官让你介绍下web测试,标准的高大上回答如下:
【基础理论-WEB测试】面试官让你介绍下web测试,标准的高大上回答如下:
团队里的妹子让阿粉跟她说说怎样写出好的代码
昨天,团队里的妹子很突然地就让阿粉跟她说说怎么才能写出一手好的代码 阿粉本着负责任的态度,专门写了一篇文章出来,妹子嘛,就是要宠的嘛
|
敏捷开发 Java BI
人月神话札记:系统设计
人月神话札记:系统设计
104 0
|
敏捷开发 架构师 安全
代码大全2札记:前期准备
代码大全2札记:前期准备
120 0
|
JavaScript 前端开发 测试技术
你为什么不敢重构代码?听高手亲授秘笈!
面对运行缓慢的老系统;前任程序员遗留下乱成一团的代码块;迷宫式的超级大函数……你能怎么办?无外乎两个选择:要么忍,要么重构。
2061 0