好久没有写博客了,最近工作比较忙,抽点时间,总结一下。孔子一日三省,我比不了圣人,三个月能自省一次就不错了。最近开发的过程中,越来越觉得做产品真的是一项庞大的工程,刚毕业的时候,我做过产品,跳槽后就一直在项目型的公司发展,现在自己在开发的过程中,总是希望把项目当成产品去完善。可是真的不是一件简单的事情。
首先是项目的解耦,我们总说高内聚低耦合,可是咱们做过的项目又有多少能做到这点呢?之前想模仿Spring,通过配置文件的方式降低耦合度,但是被领导制止,原因是这样的代码以后别人改不了。。。(不吐槽,继续说重点)我们在平时开发的过程中可能做不到松耦合,但是我们应该时时刻刻的想着这一点,比如我在做一个项目的时候,就会考虑哪里可以独立出来,怎么写能做到模块相对独立,以后如何移植到其他的项目中去,其一是数据表结构层面,其二是代码的引用包含关系。
我的领导有时会和我说“小高,你把这块代码重构一下”,我会尽量做好,但是我想说的是,其实重构是一件很庞大的工程,首先你需要了解整个项目中所有的代码,和程序猿写函数的手法,比如,有的人喜欢把参数包成一个Map,有的人就喜欢单个变量。有的人可能对我的这个说法很不屑,但是我觉得重构应该是一门艺术,他不是代码的简单堆砌,更不是按照规则的堆砌,而是要超脱于你的项目,从更高的层面去审视他。重构不是一天就可以做好的,他往往需要在整个项目都完结之后,从头到尾一遍一遍的改,重构几轮之后,可能你的项目会变得面目全非。这对于项目本身,可能不是件好事情,但是对于技术的提升和结合业务的领悟能力,真的是一种非常棒的提升方式。
再来说产品,首先需要一个靠谱的产品经理。。。我不是鄙视测试出身的产品经理,但是好的产品经理,代码功力是必须的,还有业务的熟悉程度。另外奉劝大家一句,年少轻狂的还是不要去做产品了,第一技术面窄,可能几年就只是接触这么一个小模块;第二,万一遇到一个什么都不懂得产品经理,你得气死;第三,体会不到做产品的好,你肯定耐不住寂寞的。
原文地址:http://blog.csdn.net/gaojiayuan/article/details/45891745