《软件开发的 201 个原则》思考:4. 高质量软件是可以实现的
在前面几个原则里面一直强调高质量的软件是很难实现的,我也反复地说高质量是有条件实现的。
这个里面的例子指的是大型软件系统,而且这个系统都是应用到航天上面的,那肯定是不能有些许差错的。平时自己的代码,反正我的代码应该不会到这么贵,但这不意味着质量就可以低,或者达到高质量的门槛就会更容易,其实是一样的。
雇佣优秀的人,虽然我还没看到,但我觉得确实如此。对自己代码要求高的人,容易写出高质量的代码,完备的单元测试+完善的设计文档,我相信这样的人写出的 bug 一定不会多。
这一点还是很难的,在大多数客户那里是什么都想要。如果能让他意识到这一点,除非跟他们合作很久了。但是,一开始对接的时候,客户基本上就是啥都要,尤其是小企业的时候,真惨。
这句话,我是十分认同。一个初级开发工程师走向高级开发工程师,其中不仅仅是对代码的理解能力提升,也是对业务的理解提升,对整个开发的感知会有提升。开发感知其实也就是软件工程能力,绝不能已这个功能开发完了就完了。开发完这个功能,单元测试是否写了,是否有影响到其他功能,设计思路是不是好的,在跟别人沟通这个需求的时候,是否有倾听别人的建议了,等等。如果是刚开始的初级开发人员,就到开发完功能是 ok 的,因为什么都还不是很懂,就是涉猎。但是慢慢有了工作经验,就必须有意识地注意到这些细节,注意这些细节的开发人员,能力必然会慢慢凸显出来。
大型软件或者我是写不到了,但是我把中小型系统做到极致,做到理解透,那么我相信我也能上手写大型系统。我的目标就是架构师,因此,理解透是我的目标之一。最后一句,我始终相信做好基础,一定可以写出高质量的代码。
评论