代码审查对于一些新人我个人觉得是有必要的,因为新人来了不了解我们的原则、不熟悉我们的代码规范;此时应该通过代码审查机制来纠正或着带领着他们朝着我们一个共同的方向发展。通过代码审查可以纠正一些错误的或者不好的实现,找出一种当前最优的方案;还可以让新人意识到一些他觉得无所谓的问题。pmp.mypm.net
代码重构training.mypm.net
发现不好的或者坏掉的代码必须重构,因为如果觉得这段代码有问题,只要这个项目活着,未来的某一天肯定会出问题。一个没事或以后改吧可能导致一个重大的线上事故。因此发现不好的代码应该找时间立即重构。重构的目标也是架构原则指导的,不符合原则的就应该重构掉。项目管理者联盟
代码注释service.mypm.net
很多人可能不屑于写注释,觉得代码就是注释;那我觉得可能是他没见过变态的业务需求,在我们项目中总是存在一些非常变态或着说是魔法代码,这些代码只有当时写的人理解,如果没有注释,你是不了解他那么做的意图的,会觉得很不可思议,但是实际上那就是业务需求。还有一些是我们依赖别人的接口,而这个接口也是非常不可接受的,但是已经有非常多的部门依赖不可能改的,此时也只能默默接受。对于这些变态的需求或者不可理解的需求写注释吧。training.mypm.net
代码逻辑抽象www.mypm.net
抽象是非常重要的一个过程,把项目中一些共性、经常用到的功能做抽象,抽象成公共代码或基础组件,这样对于这些功能就可以反复使用,这个过程是持续的,发现到共性就考虑重构抽象。这种方式可以提升我们的开发效率,简化业务逻辑实现。比如我们做的消息处理系统,只需要简单配置下就可以工作了。pmp.mypm.net
工具类项目管理者联盟
在项目开发过程中,要带领团队成员使用常见的工具类,如apache commons、google guava等。使用这些工具类可以使得代码bug更少(最常见的如空指针异常)、代码更短、更易懂。项目经理圈子
项目闭环项目经理圈子
我们在做项目时发现有人把一个大项目分拆为多个子系统,然后这些子系统作为独立项目,然后当新人来的时候总摸不着头脑。因此我的做法是使用如Maven构建一个大项目,然后拆成各种子模块,整个项目都在一起的。项目管理者联盟
持续改进项目管理者联盟
技术每天都在发生变化,因此我们要持续学习,了解目前对于项目来说最优的解决方案,然后适当的应用到项目中,进行项目的持续改进,有时候就是需要革自己命,持续发展;但是一定要有好的回滚策略,任何改进不能牺牲稳定性或增加事故率为前提,这个风险要有很好的把控。项目经理圈子
自动化项目管理者联盟
对于一些运维或者业务相关的功能我们需要自动化完成;如果我们经常处理一些问题,那么可以考虑为这些问题构建一个自动化工具,减少我们的重复劳动。项目管理者联盟
我个人认为要搭建一个好的项目,就是要有好的价值观,不打破自己设立的原则,自觉自律朝着好的方向发展,不偷懒;任何人破坏我的代码我都要想办法纠正过来。项目管理论坛 项目管理者联盟
|