Certo; dotnet-protobufs è una porta della versione java, quindi condivide un API e un approccio molto simili all'implementazione core di google; codice-gemma, immutabilità, ecc.
Protobuf-net è byte compatibile, ma è una completa re-implementazione da zero, seguendo gli idiomi .NET standard, quindi è familiare agli utenti di XmlSerializer, ecc. Funziona anche contro mutabile oggetti (e immutabile seconda della configurazione, e le strutture in v2), ed ha ganci opzionali per WCF, servizi remoti, ecc
Entrambi possono funzionare da .proto (probabilmente dotnet-protobufs è meglio a questo che protobuf- netto); ma protobuf-net può funzionare contro .net poco/DTO ecc. senza .proto o alcun codegen.
Inoltre, protobuf-net offre cose come il supporto di ereditarietà, ma non si può scegliere di utilizzarlo nello scenario in quanto non si mappa facilmente con le definizioni di .proto.
fonte
2010-10-11 18:11:19
Il primo è scritto da [Marc Gravell] (http://stackoverflow.com/users/23354/marc-gravell) (classificato secondo nella reputazione qui), e il secondo è scritto da [Jon Skeet] (http://stackoverflow.com/users/22656/jon-skeet) (classificato al primo posto nella reputazione qui). Anche se non ho mai usato nessuno di questi, scommetto che non potresti sbagliare in nessun modo. –
Dato che Jon Skeet in realtà funziona per Google, proverei prima la sua versione. – Gabe
Ma quale è meglio? C'è solo un modo per scoprirlo ... LOTTA! (questo potrebbe avere senso se sai chi è Harry Hill - altrimenti potrebbe sembrare insolitamente aggressivo ...) –