从事软件开发很多年了,发现了一些基本的原则能够帮助我成为一个更有效率的程序员。
优秀的编程与好的设计和架构密切相关,下面总结的原则帮助我成为一个好的开发人员,我相信它们能帮助开发人员更有效率地开发和更加容易地去维护,并且尽可能的减少问题的出现。
这应该是最为基础的技术,很多功能在设计时都是为了唯一的目标,当你发现功能有重复的时候,停止你的工作,建立一个抽象的方式,把可能重复的工作“封装”起来。
每个重要的功能,都应该在代码中只出现一次,可以写在抽象类中或接口
不要编写你可能用不到的代码,直到它真正需要去实现,可以定义抽象方法用于不确定的功能
当设计代码结构时,可以自问,什么是最简单的方式去解决这个问题?这样有助于我们找到最简单的方式去实现功能。
代码应该简单易懂,如果代码需要让检查者话费很多时间去分析,那么你的代码就需要重构了。
实体类应该仅应用于开启开启扩展功能,换句话说,它应该只能被继承,而关闭修改。
任何代码只要编写后,就会被维护,不管是你自己还是由别人。对于其他人而言,他们看你的代码是陌生的,当你编写代码时,想像一下后期别人维护你代码时的感觉,千万不看过你的代码后认为“你是一个"精神病患者“!
不要让检查者在你的代码中看到太多”惊喜“,你的代码应该追寻编程的规约,完成根据注释和函数名字对应的功能。
子程序(功能)模块应该只完成它单独的功能。
考虑松散耦合性,尽可能地减少它与别的功能的关联。
有相同或相似功能的代码应该尽快能放在一个子程序模块中。
功能封装后,在被调用时,开发人员只需要考虑它的功能,无需要考虑或编写它执行的细节。
当你编写程序时,总会有想优化或修改的想法,这样做会打断你的思路,并且引起并发问题。
当确定编码设计的框架后,首先要做的是先把代码所要实现的功能完成,然后再考虑优化或重构你的代码。
开发过程中,从设计到代码编写,都会需要变更。需求的改变,设计架构的重构,代码的重构等等。作为开发人员,要理解这样的改变并适应这样的改变,拥抱它!
推荐一本好书:极限编程-拥抱变化 V2(http://download.csdn.net/detail/newegg2009/5425127)
放到我的资源里了,看不到连接的朋友请从新浪直接下载极限编程-拥抱变化