2012-03-25 10 views
0

私は、クライアント、ロビーサーバー、ゲームサーバーを持つターンベースのカードゲームを作っています。クロス言語と双方向性の両方のメゾロジがあります(たとえば、クライアントリクエスト - >サーバーサーバーレスポンス - >クライアント、サーバーリクエスト - >クライアントクライアントレスポンス - >サーバー)。クロスランゲージ双方向クライアント - サーバー通信方法論?

私はJMSを調べましたが、私のニーズにあまりにも重すぎると考えています(このプログラムはちょうど小規模ですが、複雑なのでこのソリューションは適切ではないと思います)。私は簡単にRESTを検討しましたが、双方向の要件には合わないと思います。もちろん、RMIはありますが、別の学習の練習としてC++や他の言語でクライアントを開発できるようにしたいと考えています。

正直言って、私はJMSを使いたくないので少し迷っていますが、これはあまりにも複雑だと思うので、私はただTCPソケットを使ってメッセージのための基本的なXMLベースのプロトコルは、プログラムのための良好な通信構造を提供する。

答えて

2

私が研究している研究所では、「オブジェクト指向分散セマンティックサービス」というシステムを開発しています。

クロスランゲージシリアル化を使用して、異なる言語でクライアント/サーバーを作成できるようにするため、実装言語に関係なくクライアント/サーバーによってシリアル化およびシリアル化される形式。

今はJava/ObjectiveCをサポートしています。チャットルームのチュートリアルを見ることができます。チャットルームのチュートリアルでは、リクエスト/レスポンスの仕組みに関する基本的な考え方を得ることができます。

http://ecologylab.net/research/simplGuide/oodss/index.html

OODSSは、システムが最初に私たちの研究室での研究者の一人が働いていたゲームをサポートするために書かれた...ゲームのシナリオのためにうまく動作するように設計されています。 OODSSの原著論文は、ゲームの発展を根底から論じている。それはうまくいくかもしれません:http://ecologylab.net/technicalReports/oodss_TR_10_01.pdf

同様の考えを適用して、まだサポートされていない言語で複数のクライアントを許可することができます。 (開始するには、シリアライズ/デシリアライゼーションコードを自分で作成する必要があります)

幸運を祈る!希望が助けてくれる!