现有一个中等大小的应用程序是使用 MS-Access 开发的,目前只有 15 个用户使用。我们现在陷入了困境,不知道是要废弃这个现有的 MS-Access 应用程序,还是开发相同功能的 .Net 应用程序(可以是 Windows 或 Web)。 由于这不是一个庞大的应用程序,将功能移植到 .Net 应用程序中是否有积极作用呢?比较两者(.Net VS MS-Access)- 在性能、安全性等方面进行比较,并阐述开发 .Net 应用程序的优势也会对我有所帮助。
现有一个中等大小的应用程序是使用 MS-Access 开发的,目前只有 15 个用户使用。我们现在陷入了困境,不知道是要废弃这个现有的 MS-Access 应用程序,还是开发相同功能的 .Net 应用程序(可以是 Windows 或 Web)。 由于这不是一个庞大的应用程序,将功能移植到 .Net 应用程序中是否有积极作用呢?比较两者(.Net VS MS-Access)- 在性能、安全性等方面进行比较,并阐述开发 .Net 应用程序的优势也会对我有所帮助。
我认为将“.NET”和“MS-Access”进行一般性的比较是没有意义的。当然,您可以将当前应用程序与预期迁移应用程序的功能/性能/安全等方面进行比较,但需要了解更多关于应用程序细节以及如何设计“.NET”版本的信息。
如果您正在寻找理由来证明迁移的努力是值得的,您应该问自己以下问题:
编辑:这是Joel Spolsky的一篇10多年前的文章。
http://www.joelonsoftware.com/articles/fog0000000069.html
这篇文章与该主题有关。了解他对于放弃现有应用程序并重新开始的看法。
如果您的应用程序主要是一个工具,用于查看和编辑与表格布局紧密耦合的简单表格中的数据记录,并且在整个过程中几乎不需要计算逻辑,则MS Access似乎是一个很好的选择。
我刚刚完成了对一个包含约2000行VBA代码、10个表单、50个表和80个查询的MS Access应用程序的重新实现,将其转换成了Java,因为它包含了许多与数据库无关的计算和I/O操作。Java应用程序使用约18000行代码实现了相同的目标。整合所有不同的数据库所需的努力是相当可观的。使用C#或其他.NET技术可能会略有改善,但并不显著。
这完全取决于您的Access应用程序的设计目的。
与其将 .net 与 Access 进行比较,我认为您真正需要比较的是在 Access 中存储数据和在 SQL Server 中存储数据。
请记住以下所有组合都是有效的:
一般来说,如果您的数据库和用户数量正在增长,但前端的复杂性并没有增加,我建议选择选项3。如果数据和复杂性都在增长,可能值得全面升级到一个访问 SQL Server 的 Windows/Web .net 应用程序,并进行完全重写。这将需要更多的专业技能和潜在的开发时间,但会带来无法衡量的灵活性和更多的调整性能的选项。