[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: General question about GNUStep

From: Simeon Mitev
Subject: Re: General question about GNUStep
Date: Wed, 26 Aug 2009 00:02:34 +0200
User-agent: Thunderbird (Macintosh/20090812)

Nice spot Michael!

It is really nice that during development I could extend the messages (protocol) without forcing the old version running client applications first to update and then allow then to connect to the server.

Having compiled reader and writer is much better for me than reflection, which is also an option and possible with PBs.

There are ports of the library for many languages including Java, C++, Objective C and more, so the library and the protocol are not language or platform depended.


// Simeon


In my experience, the simplest (one-liner!) and robustest solution was
indeed to send plist-serialised data over the wire -- both platforms
(GNUstep and OSX) support fast serialization/deserialisation to plist,
and as an added benefit this is easier to debug as the data is sent in
clear, and in a notably more efficient way than XML do :)
you can find some infos on the architecture I used in

Note that writing a plist reader in java or C++ is quite simple.
Another possibility is to use XML-RPC, which has implementation
everywhere. But this is quite verbose (even if it's far from the
abomination that SOAP is).

You also might consider using Google Protocol Buffers: http://code.google.com/p/protobuf/

Protocol Buffers defines an efficient format for exchanging data over a network. The great thing about Protocol Buffers is that you can add or remove fields without breaking the protocol.

You define the messages in an IDL like syntax:

message Person {
  required int32 id = 1;
  required string name = 2;
  optional string email = 3;

There is also an Objective C implementation:

I don't know if it works with Gnustep though.


Discuss-gnustep mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]