百科问答小站 logo
百科问答小站 font logo



面对很乱的代码,你会慢慢看,慢慢改,还是重写? 第1页

  

user avatar   yao-dong-27 网友的相关建议: 
      

也许你有很强的编程能力,能驾驭1000行,5000行甚至10000行代码的重写,短时间内可以完成,并且bug不多,但是10万行呢,100万行呢,甚至数千万行呢?个人的能力总是有极限的。

团队的力量呢?2-3个人或许好找,但是去哪里找50-100个愿意去重写代码的人,并且还能保证质量呢?

更难的是,到哪里找到经理或老板愿意等你半年甚至一年不响应需求,不改bug,而是去重写代码,去用一套新代码完成和老代码一样的功能,甚至可能更多的bug。

抛开程序员的完美主义情怀,理性地看待分析旧代码,问自己几个问题:

是不是继续维护的成本真的比重新开发还要高?

是不是新的团队在设计开发能力上比原有团队上了一个台阶?

是不是有一些硬需求在旧代码上无论如何都无法做到?

是不是没有竞争对手在穷追不舍而不能停止更新维护?

是不是重写能提供些杀手级功能压制竞争对手?

分别对旧代码和新架构做下 SWOT分析,看看优势,劣势,机会,威胁都是什么。

旧代码或许在架构,接口设计,变量命名和缩进风格上不如人意,但是它是可以工作的,可以工作的代码意味着解决了很多问题,而这些问题在新重写的代码里并不会因为代码写得漂亮就自动得到解决,仍然要把前辈们踩的坑再踩一遍。

那么是不是就不能重写代码呢?不是,要等机会,看缘分的。

个人认为,如果我上面问的五个问题至少三个问题的答案是“是”,SWOT分析的结果里至少三项是有利于重写的,那么可以说也许缘分来了。


user avatar   jeffz 网友的相关建议: 
      

慢慢改,一块一块慢慢重写,最终整个重写掉了。




  

相关话题

  一个达不到招聘要求的程序员,每个月只拿两千或不拿工资,企业会同意让他进公司工作吗? 
  如何才能写出没有bug的程序? 
  我无法在学习生活上保持同样的热情该怎么办? 
  不同编程语言的转义字符可以通用吗? 
  “Facebook 开发的高性能PHP虚拟机 HHVM 比官方的 PHP解释器 快超过9倍”的说法是否属实? 
  C#/JavaList自定义索引? 
  怎么看待中兴通讯荣获全球移动大奖(GLOMO Award)? 
  企业带宽100M带宽要7万,可以用家庭宽带代替吗? 
  数据库预编译为何能防止SQL注入? 
  面向对象编程的下一阶段是什么? 

前一个讨论
为什么权力不能世袭,而金钱却可以世袭?
下一个讨论
外国人爱吃老干妈吗?对老干妈的评价如何?





© 2025-05-05 - tinynew.org. All Rights Reserved.
© 2025-05-05 - tinynew.org. 保留所有权利