使用Java是开发基于GUI的会计应用程序的适当语言/平台吗?

Awa*_*ken 10 c++ java user-interface qt cross-platform

我知道这是部分主观的,但希望有足够的细节,我可以得到一个很好的答案.

我希望开发一个针对特定细分市场的会计应用程序(想想Quickbooks,但经过调整).大多数应用程序都是可编辑的表,与DB数据和一些基本的报告和图形功能链接.

它必须是跨平台的(OS X和Windows).

它将与本地DB连接.(SQLite或Derby或其他)

速度不是一个"巨大"的问题.它需要具有合理的响应性(与C/C++相比,我不熟悉Java速度).

我把它缩小到C++与QT和Java之间.我只知道很少量的Java,但是经常使用C++.但是,到目前为止,Java似乎是最好的整体解决方案,书籍/文档的数量是巨大的,这是一个加号.

  1. 与Java GUI和DB集成有多容易?NetBeans是否使这个过程变得简单,还是应该使用Eclipse?我正在寻找与Visual Studio类似的C#体验.
  2. Java中的整个"大十进制"舍入问题是一个主要问题还是易于解决?(对不起,如果我对该主题听起来没有受过教育,但我真的不熟悉Java)
  3. 是否有任何关于Java的真正的showstopper,我可能没有想到这里或任何真正的强大理由我应该使用C++和QT吗?
  4. 如果我最终想将部分或全部内容移植到Web上,桌面上的Java是否可以让以后更容易移植?

小智 10

首先我要说的是"这里没有正确的答案".

Java可以完全按照您的意愿执行.经过多年的改造,GUI工具包非常先进.您还可以使用许多工具,框架和扩展来使GUI看起来非常先进.

Java还有一个很棒的数据库连接框架.使用对象关系映射(ORM)工具(Hibernate和其他工具),可以很容易地从数据库中获取数据,将数据放入对象中,对其进行操作并将其放回数据库中.ORM工具还可以轻松地将数据对象直接连接到GUI,并使用这些对象中的规则来保护数据免受损坏.

跨平台支持将为您提供很多帮助.唯一的大问题是在机器上为文件提供Java运行时.有办法解决这个问题(最好的是安装人员把它放在那里).


ext*_*eon 7

显然没有一种解决方案,但两种解决方案都存在利弊,甚至还有第三种解决方案:带Qt的Java.

首先,我对C++和Qt的经验已有几年历史了,所以可能不那么准确,而且当我看到开发工具时,我对java GUI开发的兴趣在一两年前结束了.我通常使用Java,但不使用Swing.

也就是说,Java和C++之间的主要区别似乎是部署.Java总是依赖于安装的java环境,而C++则更加独立.如果您可以在两个平台上管理部署,我会在这方面略微偏爱C++.

至于GUI开发,Qt工具非常好,只是变得更好.该框架还非常紧密地匹配GUI过程,并且非常适合这种工作.Swing似乎有点低级,并且需要相当数量的样板代码.我知道自己没有真正好的开发工具,虽然我听到了mantisse的好东西.

如果您认为Java是部署或后端逻辑的方法,但Qt的GUI工具太好了,无法忽略,请查看有关Java Swing或Java Qt的stackoverflow问题.值得一读.

在您的特定情况下,我会使用C++/Qt,因为您有使用C++的经验,并且正确构建Java Swing应用程序并不是那么简单.


Pau*_*lin 5

  1. 我不熟悉Netbeans,但我已经完成了几个具有数据库访问权限的Java应用程序.即使我使用gvim而不是IDE,我发现它也很容易.
  2. 您在谈论什么"大十进制"问题?所有计算机语言都存在二进制和十进制之间映射的问题,但如果您知道自己在做什么,则无论语言如何都可以处理它.见鬼,我在FORTRAN-H做过工程应用.
  3. 除了你更了解C++之外,没有理由不使用Java.它很好地满足您的要求.
  4. 写一些东西,最终可以移植到网络更多的是确保你使用模型 - 视图 - 控制器模式,并记住你的视图可能最终是完全不同的东西.这是一种设计理念,而不是语言要求.