我和我的朋友在应用程序开发问题上存在分歧。这是一个简单的生产管理应用程序。
据我的朋友说,前端将数据存储在 XML 中,Java 程序将读取 XML 文档,将其存储(在后端),然后应用一些业务逻辑并将结果再次存储到另一个 XML 文档中。并且 C# 前端将显示结果(他想使用套接字来传达 XML 的状态)。
我认为这是一个坏主意。我建议整个应用程序应该用 C# 或 Java 编写。
注意:该应用程序是独立的。它不在网络上使用。
你们有人试过吗?请分享你的想法:)
我和我的朋友在应用程序开发问题上存在分歧。这是一个简单的生产管理应用程序。
据我的朋友说,前端将数据存储在 XML 中,Java 程序将读取 XML 文档,将其存储(在后端),然后应用一些业务逻辑并将结果再次存储到另一个 XML 文档中。并且 C# 前端将显示结果(他想使用套接字来传达 XML 的状态)。
我认为这是一个坏主意。我建议整个应用程序应该用 C# 或 Java 编写。
注意:该应用程序是独立的。它不在网络上使用。
你们有人试过吗?请分享你的想法:)
你是对的,你的朋友给出了一个坏主意。另外,从你的问题中,我看到有几个困扰的问题,我不知道从哪里开始,所以我只是列出它们而不是任何特定的顺序。但是您要继续阅读的基本规则是,您必须同意越简单越好,正如爱因斯坦所说的“事情应该尽可能简单,但不能更简单”(或者类似的东西,我不记得确切的引用)。
这些是最明显的原因。从经理或公司的角度来看,还有其他原因:
谈论让它变得复杂。Java 或 C#。一个真的不是另一个的后端。它们都与语言“做同样的事情”。唯一的区别是您是想利用 .NET 的力量,还是想利用巨大的 Java 框架的力量。
这是一个“不通过网络使用”的桌面应用程序......我根本看不到需要真正的“后端”。
用单一语言编写桌面应用程序,并将数据存储在 XML 中。
所以你的应用程序是独立的,不需要通过网络工作,但你的朋友坚持使用套接字连接应用程序的前端和后端?此设置有问题,似乎比需要的复杂。
在我看来,您的朋友想使用 Java,因为他更了解 Java 的 XML 处理框架。就个人而言,我认为 Java 和 .NET 之间的互操作是多余的。通过使用您选择的单一语言编写应用程序,您将节省大量工时和挫败感。
你朋友的建议是保持模块化。您使用什么语言并不重要,但如果将它放在一个大项目中,您可能会使其非模块化。
对于那种类型的应用程序,我只会使用一种语言。
可以在前端利用 C# 桌面应用程序的强大功能并在后端使用 Java Ejb+Web 服务 (Jax-ws)。C# 应用程序可以读取 SOAP wsdl 来创建存根和访问由 Jax-ws 实现的 Java 后端的接口。