![]() |
1
43
通过使用不再受支持或已被取代的硬件、软件、API、语言、技术或功能,通常结合很少或根本不可能替换该代码,而是使用它直到它或系统死亡。 |
![]() |
2
26
与普通遗产一样,当作者死亡或失踪时,作为继承人,您可以获得他的全部或部分代码。 你流下了眼泪,想弄明白怎么处理这些垃圾。 |
![]() |
3
23
Michael Feathers在他的书中有一个有趣的定义,即有效地使用遗留代码。根据他的说法,遗留代码是没有自动测试的代码。 |
![]() |
4
17
这是一个非常普遍的(经常被滥用的术语),但以下任何一项都是称应用程序为遗留的合法理由:
|
![]() |
5
12
|
![]() |
6
11
根据《卓越》一书的作者迈克尔·费瑟的说法 Working Effectively with Legacy Code
|
![]() |
7
8
一位同事曾经告诉我,遗留代码是您自己没有编写过的任何代码。 可以说,它只是一个贬义词,用来指我们出于任何原因不再喜欢的代码(通常是因为它不酷也不时尚,但它很管用)。 TDD团队可能会建议,任何未经测试的代码都是遗留代码。 |
![]() |
8
7
Legacy code 与不再支持或制造的操作系统或其他计算机技术相关的源代码。 |
![]() |
9
6
|
![]() |
10
5
http://en.wikipedia.org/wiki/Legacy_code “遗留代码是与不再支持或制造的源代码相关的源代码” |
![]() |
11
5
缺少支持(或文档)的任何代码。就这样吧:
|
![]() |
12
5
对我来说,遗留代码是在某种范式转换之前编写的代码。
它可能仍在大量使用中,但正在进行重构以使其符合要求。
|
![]() |
13
2
当代码(或其他任何东西)被更新/更好的东西所取代时,它就变成了“遗产”,尽管如此,它仍然在“野外”使用并保持活力。 |
![]() |
14
2
保留遗留代码与其说是一种学术理想,不如说是保持代码正常工作,不管它有多糟糕。在许多保守的企业环境中,这被认为比扔掉它然后从头开始更实际。最好是你知道的魔鬼。。。 |
![]() |
15
2
遗留代码是一种痛苦/昂贵的代码,无法跟上不断变化的需求。 有两种方法可以实现这一点:
1) 两者中,最容易识别的一个。正是软件有着根本的局限性,使得它无法跟上周围的生态系统。例如,围绕O(n^2)算法构建的系统不会扩展到某个点之外,如果需求朝该方向移动,则必须重新编写。另一个例子是使用最新OS版本不支持的库的代码。 2) 很难识别,但所有这类代码都有一个共同的特点,即人们害怕更改它。这可能是因为它一开始编写/记录得很糟糕,因为它未经测试,或者因为它很重要,理解它的原始作者离开了团队。 构成活代码的ASCII/Unicode字符在与之相关的人们的心目中具有语义含义,“为什么”、“什么”以及某种程度上的“如何”。遗留代码要么是未拥有的,要么所有者没有与大部分代码相关的含义。一旦发生这种情况(如果代码编写得很糟糕,第二天就会发生这种情况),要更改此代码,必须有人学习并理解它。这个过程是编写它所需时间的一个重要组成部分。 |
![]() |
16
2
你害怕重构代码的那一天,就是你的代码成为遗留代码的那一天。 |
![]() |
17
1
与这里的其他一些观点不同,我已经看到很多现代应用程序在没有单元测试的情况下正常工作。单元测试还没有普及到每个人。也许十年后,下一代程序员将查看我们当前的应用程序,并把它们看作是不包含单元测试的“遗产”,就像我认为非面向对象的应用是遗留的一样。 如果只需对遗留代码库进行少量更改,那么最好保持原样,按照流程进行。如果应用程序需要剧烈的功能更改、GUI大修和/或找不到懂编程语言的人,那么是时候扔掉它重新开始了。然而,有一点需要提醒:从头开始重写可能非常耗时,而且很难知道您是否已经复制了所有功能。您可能希望为遗留应用程序和新应用程序编写测试用例和单元测试。 |
![]() |
18
0
老实说,遗留代码是其他软件的任何代码、框架、api,它不再“酷”了。例如,COBOL被一致认为是遗产,而APL则不是。现在,我们还可以证明COBOL是传统的和APL,而不是因为它的安装基数是APL的100万倍。然而,如果你说你需要在APL代码上工作,那么答案将不是“哦,不,那些遗留的东西”,而是“哦,我的上帝,我猜你在下个世纪不会做任何事情”,看到区别了吗? |
![]() |
19
0
我喜欢把遗留代码看作是 . 这只是过去编写的代码。在大多数情况下,遗留代码不遵循新的/当前的实践,通常被认为是过时的。 |
![]() |
20
-2
遗留代码是一个多月前编写的任何代码:-) |
![]() |
21
-2
很多代码不是用流行的脚本语言dujour编写的,我只是半开玩笑。 |
![]() |
benbotto · 多个网站,单个代码库:git fork? 7 年前 |
![]() |
Peter · 检测变量是否为模式[重复] 7 年前 |
![]() |
Andrew McKinley · Swift中无法识别C指针数组 9 年前 |
![]() |
Patrick · 在框架中包装旧应用程序 9 年前 |