遗留错误复制的术语?

发布于 2024-09-10 19:20:10 字数 107 浏览 10 评论 0原文

出于无聊的好奇心,有人知道在旧系统的新实现中复制错误的术语,以便保持与依赖错误功能的旧客户端的向后兼容性吗?如果它包含必须对不正确的行为进行逆向工程以便正确复制不符合规范的内容的含义,我会特别感兴趣。

Out of idle curiosity, does anybody know of a term for replicating bugs in a new implementation of an old system so as to maintain backwards compatibility with old clients that rely on the buggy functionality? I'd be particularly interested if it included a connotation of having to reverse engineer the incorrect behavior so as to properly replicate what was not to spec.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

尝蛊 2024-09-17 19:20:10

我认为“向后兼容性”涵盖了这一点。

Joel Spolsky 著名的“API Wars”帖子中有关 Windows 3.1 开发的一个很好的例子:

在 Raymond 的博客上读到的最令人印象深刻的内容是 Windows 团队多年来为支持向后兼容性所做的令人难以置信的努力的故事。

[...]

我第一次从热门游戏 SimCity 的一位开发者那里听说了这个消息,他告诉我他的应用程序中存在一个严重的错误:它在释放内存后立即使用了内存,这是一个主要的禁忌,但碰巧工作正常在 DOS 上,但在 Windows 下不起作用,在 Windows 下,释放的内存可能会立即被另一个正在运行的应用程序抢占。 Windows 团队的测试人员正在检查各种流行的应用程序,对它们进行测试以确保它们工作正常,但 SimCity 不断崩溃。他们向 Windows 开发人员报告了这一情况,后者反汇编了 SimCity,在调试器中单步调试它,发现了错误,并添加了特殊代码来检查 SimCity 是否正在运行,如果运行,就运行内存分配器处于一种特殊模式,在这种模式下,释放内存后您仍然可以使用内存

I think this is covered by "backwards compatibility".

A good example from Joel Spolsky's famous "API Wars" post about the development of Windows 3.1:

The most impressive things to read on Raymond's weblog are the stories of the incredible efforts the Windows team has made over the years to support backwards compatibility.

[...]

I first heard about this from one of the developers of the hit game SimCity, who told me that there was a critical bug in his application: it used memory right after freeing it, a major no-no that happened to work OK on DOS but would not work under Windows where memory that is freed is likely to be snatched up by another running application right away. The testers on the Windows team were going through various popular applications, testing them to make sure they worked OK, but SimCity kept crashing. They reported this to the Windows developers, who disassembled SimCity, stepped through it in a debugger, found the bug, and added special code that checked if SimCity was running, and if it did, ran the memory allocator in a special mode in which you could still use memory after freeing it.

鸵鸟症 2024-09-17 19:20:10

我总是称之为“糟糕的兼容性”。

I always call that "crapwards compatibility".

恏ㄋ傷疤忘ㄋ疼 2024-09-17 19:20:10

我会满足于“错误兼容”:纠正所有错误太困难了。

I would settle for 'bug-compatible' : it is too difficult to get all bugs right.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文