问题标签 [legacy-code]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
140 浏览

php - 基于 Windows 2000 的网站的最佳语言

有人联系我以了解有关更新使用 ASP 和 Access 构建的旧式 Web 应用程序的信息。该服务器正在运行 Windows 2000 Advanced Server,我相信 IIS 5.0(我正在尝试对此进行确认,但该公司不是技术公司,因此我非常怀疑 Apache 是否在服务器上运行)。

哪些语言可以在上述平台上更新此 Web 应用程序?我从来没有接触过经典的 ASP,更不用说针对 Windows 2000/IIS 5 的任何 Web 开发工作了。由于预算问题,没有计划将服务器更新为任何新的东西。

我目前倾向于迁移到基于 SQLite 的数据库(客户目前不太热衷于安装 MySQL,但我仍处于规划阶段,这是一个流量相对较低的网站),但是什么语言会我和那个配对?ASP.NET 在 IIS 5 下运行良好吗?在这种设置下,PHP 的表现是否有价值?

0 投票
2 回答
2520 浏览

wpf - 如何在 MS Access VBA 表单中托管 WPF 控件?

我们有一个大型 MS Access 项目,它需要在 VBA/访问表单环境中难以/不可能完成的 GUI 功能。

随着时间的推移,我们希望重写/迁移到以 WPF 作为表示层的托管 C# 环境。

我们做到这一点的唯一实用方法是在更长的时间内 - 首先转换一些 VBA 表单(这将提供最佳的生产力收益),然后在 12-24 个月的过程中转换整个系统。

你认为什么是最好的方法。MS Access 可以在我们转换 WPF 表单时托管它们吗?

0 投票
4 回答
185 浏览

php - isset 在旧版本中的工作方式是否不同

我得到了一些具有此功能的遗留代码:

我不知道确切原因,但这似乎有效。htmlcode1 在我有 ?pagina=homepage 时加载,而 htmlcode2 在 pagina var 不存在或者是其他东西时加载(还没有真正看到其他东西,只是不存在)。该网站使用的是php4(不知道确切的版本)。但实际上,这怎么能行呢?我查看了手册,它说 isset 返回一个布尔值。

任何人?

0 投票
9 回答
38213 浏览

vb6 - Windows 7 是否支持 VB6 运行时?

我似乎无法找到一个直接的答案。似乎不支持 Visual Studio 6,但我只关心运行时。我们有一些不希望重写的旧版应用程序,但我们的客户希望它们能够在 Windows 7 上运行。

如果有人可以提供有关该主题的 MS 官方内容的链接,那将非常有帮助。

0 投票
6 回答
3324 浏览

unit-testing - 在 LARGE 项目上启动 UnitTesting

任何人都可以推荐一些关于如何解决开始对大型现有代码库进行单元测试的问题的最佳实践吗?我目前面临的问题包括:

  • 庞大的代码库
  • 零现有单元测试
  • 类之间的高耦合
  • 复杂的 OM(我在这里无能为力 - 这是一个复杂的业务领域)
  • 缺乏编写 UnitTests/TDD 的经验
  • 数据库依赖
  • 外部源依赖项(Web 服务、WCF 服务、NetBIOS 等)

显然,我知道我应该从重构代码开始,以减少耦合,并提高可测试性。然而,如果没有 UnitTests(鸡和蛋,有人知道吗?),进行这样的重构是有风险的。

顺便说一句,您是否建议在域类或层类(日志记录、实用程序等)上开始重构和编写测试?

0 投票
1 回答
140 浏览

parsing - 在代码库中搜索对表名的引用

我有一个目录,里面全是来自 VB6 应用程序的遗留代码。

我被要求提供此应用程序使用的所有表的列表,因此我们可以为其分配一个特殊的 SQL Server 用户名。

扫描代码库以查找对表名的引用的最佳方法是什么?

我的一些想法:

  1. 搜索以下关键字:“FROM”、“UPDATE”、“INSERT”,并手动记下这些短语周围的表名。

    问题:大量的手工工作

  2. 使用 SQL Trace 运行应用程序,并尝试执行每个函数,然后扫描日志以查找表名

    问题:同样的手工工作,另外我可能会忽略一些晦涩的功能

任何人都可以提出更好的选择吗?

0 投票
16 回答
1037 浏览

visualization - 了解其他人的代码

我偶尔会很不幸地不得不对非常陈旧、没有记录和设计不佳 代码进行修改。

进行简单的更改通常需要很长时间,因为现有代码的结构并不多,而且我真的必须阅读大量代码才能了解事情的发展方向。

我认为在这种情况下会有很大帮助的是一种工具,它可以让人们可视化代码的概述,然后甚至可以深入了解更多细节。我怀疑这样的工具很难做到正确,因为它试图找到几乎没有或没有的结构。

我想这不是一个真正的问题,而是一个沉思。我应该把它变成一个问题 -其他人如何帮助他们了解其他人的代码,好的和坏的?

0 投票
8 回答
1428 浏览

.net - 遗留数据库上的 NHibernate

我很惭愧,但我不得不说。我没有使用过ORM。我真的在考虑 NHibernate,因为它似乎是最成熟的 .Net 产品(如果我错了,请纠正我)。现在,问题是我们有一个以 SqlServer 作为主要集成点的大型电子商务/预订系统,在存储过程中包含相当多的业务逻辑。现在 - 显然 - 这种架构是我们想要摆脱的东西,我们已经这样做了一段时间,一点一点。所以,我真正的问题是,开始使用 NHibernate 来开发新功能而不是返回并映射所有遗留的东西有多可行?这种渐进式的引入和ORM是否支持,如果支持,你会推荐吗?

0 投票
11 回答
1917 浏览

legacy-code - 哪些继承的代码给您留下了深刻的印象或启发?

多年来,我听到了大量关于我们开发人员必须使用的继承项目的抱怨。WTF 网站有大量的代码示例,让我忍不住喃喃自语“WTF?”

但是你们中的任何人是否真的被呈现给你的代码,“天哪,这是经过深思熟虑的!” 或“哇,我从来没想过!”

您必须使用哪些继承代码让您微笑,为什么?

0 投票
17 回答
599 浏览

coding-style - 在新工作中继承应用程序

在新工作中继承应用程序时,您倾向于坚持原始开发人员的编码实践还是开始应用自己的代码?

我在一家没有指导方针的小商店工作,一直想知道这里的规则是什么。有些应用程序写得很好,但不遵循我使用的标准(变量名等......),我不想“弄脏”它们。我发现我自己花了一些额外的时间来保持一致。

其他人写得非常糟糕,看起来开发人员每次击键都会改变主意......

额外的想法

当我开始自己的项目时呢?所以现在我引入了一个新的编码标准:

  1. 好的代码——但不是我的风格
  2. 具有不良实践和缺乏标准的不良代码
  3. 我自己的标准