我应该选择哪种RDBMS和开发工具重新编写基于角色的应用程序?

我有一个20年前用INFORMIX-SQL / SE(DOS)编写的当铺CRUD应用程序,它目前在Windows Vista上的Microsoft Virtual PC 2007中的DOS 6.22上运行。 我想用GUI,基于SQL的引擎使这个应用程序现代化并保留其现有function。 它不需要任何网络或多用户function。 我更喜欢一种免版税的产品。

我也想用尽可能少的努力快速重写它。 你会推荐哪种工具?

我在讨论是否用I4GL(基于字符)或其他基于Windows / GUI的工具重写我的INFORMIX-SQL应用程序。

我的应用程序非常强大,并具有一些令人难以置信的function,我的用户非常满意。 只有障碍才能阻止我有效地实现市场渗透,相信它,我的应用程序是基于字符的,我想用GUI复制相同的function。 我的感觉是,用户使用基于char的应用处理事务比使用鼠标聚焦光标更快,但化妆品对我有害!

在我投入大量时间评估其他产品之前,我想知道使用其他开发工具的限制,缺陷或缺点的具体实例。 这个问题的答案可以节省我很多时间和金钱!

如果您访问www.frankcomputer.com,您可以查看我的当铺应用程序的video演示。 (CAVEAT:该网站采用西class牙语,使用谷歌翻译获得或多或少正常的文本翻译。在两分钟标记处启动video,720p分辨率和全屏以最好地理解我的应用程序。)

根据你的答案和你强调时间来做出改变,而你似乎根本不想改变应用程序,但是当时你被逼到了,你当然应该从4js评估Genero。

这将允许您利用现有代码,但提供更好看的前端。 您还可以维护一个支持字符和“Gui”客户端的代码库。

如果这样做,我可能会选择在C#中使用SQL Server Express后端数据库编写WPF GUI。 像SQLite这样的嵌入式数据库也可以运行。 但我选择的主要原因是因为这是我最熟悉的。 其他人可能会选择其他东西……

我也可以选择ASP.NET MVC并将其作为Web应用程序(如果这是一个选项)(你说不需要多用户,但我说它还不是必需的)。

此外,如果你不是那个将要开发它的人(也就是说你将雇用某人为你建造它),那么我会说你应该首先找到开发者并让他们选择(或者至少有)说出这项技术。 如果您预先选择技术,那么您只是限制了能够与您合作的开发人员的领域,而且实际上并没有多大意义。

我建议你使用带有PostgreSQL后端的Python。 现在有些人会认为这有点矫枉过正,但看完你的video并阅读你的网站后(我不得不使用翻译 ),我怀疑通过这条路线你会真正享受到更多的灵活性。

我争论这个解决方案的原因是:

  1. Python和PostgreSQL都是很棒的产品,在您需要它们的时候会有很棒的社区。
  2. 这两种产品在其发展道路上都有着光明的前景。 既然你明显花了很多时间和精力调整SPACE,我打赌你会在接下来的40年里做同样的事情。 因此,在您继续开发周期时,您现在选择的工具需要随身携带。
  3. 他们都是免费的友好许可证。
  4. 跨平台支持。
  5. 可扩展性。 您可以使用本地安装的PostgreSQL并通过套接字连接或使用负载平衡连接池将其一直扩展到多个服务器。
  6. 安全。
  7. 数据的完整性。 这包括使整个环境易于备份并因此在发生灾难时易于恢复的容易程度。

无论你最终选择什么工具。 我祝你在这个项目中一切顺利。 我可以告诉你正在研究你真正喜欢的事情,这是我们应该努力的事情!

选择最适合您的语言和技术。 如果您需要数据库访问和较短的提前期,听起来像Java或Visual Basic是最好的。 两者都有很多免费工具可以帮助您入门。

StackOverflow中的顶级语言标签是C#(长边),然后是Java,PHP和DotNet,其次是C ++和Python。 其中一些将由该网站的Joel&Jeff起源扭曲,但其中任何一个都超出了这项任务的能力。 就个人而言,我会使用Java或Python,但我不喜欢被绑定到Microsoft堆栈。

wxWidgets和QT可能是GUI组件的选项。

在数据库中,mysql,SQL Server Express或Oracle Express Edition都是免费且强大的。 SQLite对于大多数单用户应用程序来说已经足够了。 我把它放在’重要性’列表的底部。 对于小规模的单用户应用程序,您应该能够毫不费力地切换和更改数据库平台。 最重要的是在磁盘发生故障或损坏时如何实际备份/复制/恢复数据。