discuss-gnustep
[Top][All Lists]
Advanced

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

Re: General question about GNUStep


From: Nicolas Roard
Subject: Re: General question about GNUStep
Date: Wed, 26 Aug 2009 00:53:27 +0100

On Tue, Aug 25, 2009 at 9:45 PM, Michael
Thaler<michael.thaler@physik.tu-muenchen.de> wrote:
> Hi,
>
>> 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
>> http://xdev.org/thesis/phd-thesis-nicolas-roard.pdf
>>
>> 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.

Oh yes, good catch, I forgot they were now opensourced :)
Yes, protocol buffers are pretty cool and if you want to transmit in
binary, they are a likely a better option than binary plist (I was
talking about ascii plist).

> There is also an Objective C implementation:
> http://code.google.com/p/metasyntactic/wiki/ProtocolBuffers
>
> I don't know if it works with Gnustep though.

never tried either, but it would be good to see if they do and fix it
if they don't...

Now would be fun is DO through protocol buffers ;-) [reusing etoile's
serialisation code?]

-- 
Nicolas Roard
"I love deadlines. I like the whooshing sound
they make as they fly by." -- Douglas Adams




reply via email to

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