最近涉及重构话题的文章不少啊,其实我也一直在憧憬重构,重构很绿色,重构很河蟹,重构令人很激动,重构可能让人死得很惨。
我在这里,就列举一下Refactorman的种种死法,以警后人:
1. 疲于奔命,过劳而死。
2. 吃领导给的鸭梨太大被噎死。
3. 满脑子都是代码,在上班路上不留神撞上了宝马。
4. 冷落了女友,受失恋打击跳楼而死。
5. 无暇社交,不懂人情世故,失意而死。
6. 为了说服领导和同事,心力交瘁而死。
7. 被以前的混账代码气死。
8. 被混账代码搞得大脑程序溢出,彻底崩溃,神智错乱而死。
9. 终于醒悟,问题只是冰山一角,力有未逮,忧愤而死。
10. 泥足深陷,举步维艰,进退维谷被活活困死。
11. 自己昏天黑地,看其他同事却吊儿朗当,逍遥快活,心理不平衡致忧郁而死。
12. 重构过程中,踩中前任留下的地雷,被炸得体无完肤而死。
13. 一日偶遇以前代码的作者,怒不可遏,将其一通乱砍,再鞭尸三百,然后切腹而死。
14. 系统重构后性能提高了?漏洞消除了?对不起,领导们没兴趣,失落而死。
15. 系统重构后出现了新Bug,多半会小题大作,遭游街批斗而死。
16. 马上接到通知系统功能要大升级,吐血而死。
17. 同事依旧我行我素,继续在系统中倒垃圾代码,痛心疾首而死。
18. 重构将系统中的阴暗面曝光,被同事记恨,领导排挤,学屈原投江而死。
19. 过了不多久,发现系统又乱成了一团,比以前好不到哪儿去,悲愤下一头撞死。
20. 离职后偶遇前公司的新任维护者,被其乱刀砍死再鞭尸。
各种死法中,最后一种,我们比窦娥还冤枉。所以强烈推荐大家还要练一门武功以防身。什么武功,就是:“心惊肉跳、杞人忧天、无中生有、力不从心、行尸走肉、庸人自扰、倒行逆施、废寝忘食、孤形只影、想入非非、呆若木鸡……”。这门传说中的黯然销魂掌,其中一招一式,正是我们最好的写照。
================================
好评论:
总结得很好,玩重构、模式这些,多是新手。
哥认为,无 BUG, 运行良好的代码,就是好代码。
虽然说得有些吓人,但是,重构风险的确很多,一不小心,跌入万丈深渊!
所以千万不要轻易说重构,项目上线后,团队比较闲暇时,可以小范围局部重构,然后慢慢扩大。
在动手前:
您是否想清楚,已经搞清楚了这个系统?
您是否想清楚,有必要重构这些代码?
您是否想清楚,自己有这个能力重构?
您是否想清楚,重构失败的后果?
你说的是对的,所以说,重构放在软件产品中后期,而不是前期。
如果业务变开变去,流程改了又改,你的重构,根本就没有意义。
重构,必须建立在 N 多项目的经验上,N 多客户的需求。也就是说,你必须有捕捉需求变更的能力。
为了重构而重构,或者就为了纯粹追求代码的美,无意义。你可能花了几个星期去重构,但是业务一变,你所做的,就白费了。
这个能力。
重构,不是你想做,就能做好的了。丰富的项目经验就是前提。
所以我建义新人,别搞什么重构,你没这个能力。
别好心办坏事。