程序员都有祖传代码,是真的吗?
的有关信息介绍如下:首先,基本上大部分都是有祖传代码的,几乎每个公司都会存在祖传代码。在代码界,有一个令程序员闻之心惊、谈之色变的存在——祖传代码(legacy code)。相信很多接触编程的人都对祖传代码有着难以言表的恐怖体验。如果不改这个祖传代码,就难以实现新的需求,支撑新的业务。但是一旦改了这个代码,改之后新出现的bug绝对能让人失去理智。
祖传代码,前人程序员留下的“宝藏”代码,这种代码多多少少都会存在些问题。运气好点的会碰到by xxxx多少年的注释,运气差的连注释都没有,各种奇葩的逻辑,甚至直接一大段看不懂的代码。这一般就是程序员们所说的祖传代码,祖传代码又称作“屎山”、“历史遗留代码”。碰到这种代码,程序员们最好不要去优化去动它,因为可能会引发后续一系列的问题。所以遇到这种代码,一般程序员会有两种应对方法。
1、如果这个代码已经被应用
主要是以少动为主,因为程序优化极其困难,如果必须需要改动,最好是弄清楚这段程序的边界,将这段程序封装起来,并且提前做好更改方案。
2、如果这个代码还在开发中
首先了解通读代码,如果祖传代码逻辑很难理解,务必重新写并且重新调试,趁着项目没上线先把这个程序改好吃透,省的为以后维护这段程序埋下隐患。
亚马逊程序员工程师曾经形容他们的代码:“一座很大的屎山,你见过的最大的山,每次你想修正一个bug,你的工作就是爬到屎山的正中心去”。由此可见程序员们大多数对于“祖传代码”都是有抵触心理的,以至于一看见就觉得头疼。每当大家都说“前人栽树,后人乘凉”,但是在程序员们的眼里这句话是不成立的,甚至是厌恶这段话的。因为技术大牛都搞不定“祖传代码”,更别说新手小白了。