国外大咖三十年软件开发经验总结出的十大程序编写技巧

一个好的程序员最让人称赞的莫过于能写出一手好的代码,何谓好的代码?好代码一般具有易读、易懂、易调试、易改、缺陷少等优点,想要敲出一手好代码,一朝一夕是不可能的,我们需要大量时间去实践,但这具有长远意义,因为从长期来看,我们以后可以花更少的时间和精力去维护和复用之前的代码,那么作为程序员,怎么样才能敲出一手好代码呢?

一、遵循单一责任原则

函数在程序员的库中是单一最重要的抽象形式。可以被复用的机会越多,我们要写的代码就越少,这些代码就越可靠。遵循单一责任原则的小小函数更有可能被重新使用。

二、最小化共享状态

应该将函数之间的隐式共享状态最小化,无论它是文件作用域变量还是对象的成员字段,这有利于显式的将所需的值作为参数,当明确函数实现所需的结果时,代码变得容易理解和重用,所以,我们应该优先选择静态无状态变量,而不是对象的成员变量。

三、本地化副作用

理想的副作用,比如打印到控制台、记录、改变全局状态、文件操作系统等,应该放置在单独的模块中,而不是分散在整个代码中,功能上副作用往往违反了单一的责任原则。

四、优先选择不可变的对象

如果一个对象的状态在其构造函数中设置一次,并且不再更改,则调试变得容易得多,因为一旦构造正确就确保有效,这是降低软件项目复杂性的最简单的方法之一。

五、多用接口少用类

接受接口的函数或C++中的模板参数或概念,比在类上操作的函数可重用性更强。

六、对模块应用良好的原则

将软件项目分解成更小的模块,比如库和应用程序,以实现模块化重用,模块的一些关键原则有:最小化依赖关系、每个项目都应该有一个单一明确的功能、不要重复。我们应该努力让我们的项目保持小巧和明确。

七、避免继承

在面向对象编程中,继承,特别是虚拟函数在可重用性方面往往是一个死穴,我们很少能成功的使用能覆盖类的库。

八、同设计和开发一样进行测试

我们在开始编写测试代码时,编码测试就遵循了许多知道方针,它有助于早点就错误暴露出来,避免编写无用的测试,良好的编码意味着更高级的测试在显示缺陷方面更有效。

九、优先选择而不是手写标准库

手写标准库几乎是浪费时间和精力,我们很有可能制造出新的bug并将其引入一个新的地方。

十、避免写新代码

最好的代码就是不用被复写的代码,代码越多,缺陷就越多,找到并修复bug就越困难,在编写代码前,先确认下有没有工具、函数或库已经实现了我们所需的功能。

最后,编程就好像是一项运动或一种艺术形式,只有通过不断的练习、学习,才能不断的提高代码的质量,这将有利于我们成为更高效的程序员。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值