Facebook 上一位大佬发表的代码看法,以下为原文:
我常用《天龙八部》来向客户说明一件事。
如果金庸写了40回,让別人来续写最后10回,先不论文笔工夫,续写的人必须把前40回先读一遍,甚至多遍,否则根本无法把故事接上去。重温前40回的时间是免不了的成本。
所以在某些工作上,不会因为有「別人」写了大部份,「剩下」的工作收费便宜一点。写电脑软件程式也一样,不是別人已经卸了半车的货,剩下半车的货让你卸,费用算一半。
修改別人的「完整」电脑程式也必须参考原来的代码或说明文件(多数没有凌波微步使用手册),才有办法接下去。并不会因为別人写了很大部份,我们「抄来改一改」就可以了,收费便宜一点。
很多时候,原来的程式写得一塌糊涂,重写或许更快。而且旧程式码里如果有bug,也不可能一一发现,接手后反而变成我们的bug。就像乔峰以为段正淳是30年前的带头大哥,可是那时段才45岁,乔峰的脑袋有bug以为段正淳15岁就能领导各路英豪,这种bug也是金庸升级新修版才改的。
如果系统只是GST(消费稅)改SST(销售与服务税),那就小事。如果王玉燕改成王语嫣,那是Find...Replace All,但没见到代码之前,根本不太敢接这种项目,见了代码也只能大略扫过没把握。这也就是为甚么大多数人不愿去改別人的代码。
因为有的程序员,他不会好好把「物件」取名叫锺灵、木婉清、阿朱、阿紫、阿碧,他取名叫女1、女2、女3、女4、女5,然后女3跟女4去找男6报仇,如果能接着写这种程式,大概你也成了武功天下第一的痴癫欧阳锋了。
而且有时候乔峰不能Find and Replace All去萧峰,系统会错乱,因为他是同一个人又算是两个人。
但说实话,重新开发不担保就会好,因为系统开发本来就不是简单的事。