2009-02-27 170 views
1

分享应用程序特定数据类型我要创建一个服务器(JAVA) - 客户端(C++)系统,服务器和客户端将与对象的工作(数据类型)至极是相同的客户端和对于服务器,例如汽车对象将在客户端创建,然后发送到服务器,在汽车对象上进行附加计算。我想要做的是创建一个汽车对象的通用实现,并在服务器和客户端中使用此实现。首先,我想创建一个dll(使用C++),其中所有数据类型对客户端和服务器都是一样的,但是这个解决方案有一个缺点。由于此解决方案仅适用于Windows操作系统,因此我必须支持Win,Mac,Linux。那么是否有针对我的问题的多平台解决方案?与服务器和客户端

我把我感谢所有的replyes。

回答

0

只要你坚持标准库(跨平台),你不应该有任何困难,重新编译库(DLL)作为OS X和共享库(.so) Linux操作系统。当然,在Java中加载它们是一个不同的问题(我没有任何专业知识)。

但是,更重要的是,对于客户端服务器应用程序,您可能希望查看对象的有效serialization,以便它们可以通过网络传输并由接收器可靠地重新构建。

+0

在Java中加载它们很简单(的System.loadLibrary),但他们需要对他们有JNI包装(即针对可能的设计)。 – TofuBeer 2009-02-27 07:41:24

3

谷歌有用于传输客户端和服务器之间的数据对象在您的情况称为Protocol Buffers一个开源库。它支持C++,Java和Python。

0

这看起来像一个好工作的XML。那就是我要开始的地方。