2009-09-03 8 views

Respuesta

11

Hay dos implementaciones principales de Protocol Buffers:

  • Mine (en su mayoría un puerto del código Java) ProtoBuf-Net (más WCF amable, reimplementación tierra-para arriba) de
  • Marc Gravell

Sé que Marc estaba en medio de una importante refactorización hace un tiempo; No sé si todavía lo está.

Mi propio puerto funciona hasta donde yo sé (barra un error en el tamaño de tipo empaquetado que se informó hace un par de días), pero le falta algo de pulido en el lado de la generación de cosas. Algunos usuarios están interesados ​​en la compatibilidad de Silverlight con la que he estado trabajando pero aún no lo he intentado. (Básicamente, existen algunos métodos que faltan en Silverlight, que estaba usando, yo creo que puede he migrado todos ellos ahora - Tengo que comprobar.)

no sé si alguno de aplicación está en uso en producción para cualquier sistema, pero estaré encantado de intentar solucionar cualquier error que plantees. Tenga en cuenta que estoy no con la intención de implementar los PB "lite" que aparecieron en el código 2.2 principal; harían la herencia ya complicada más desagradable. Presentaré una opción adicional para permitir que el modo (optimización de velocidad/tamaño) se especifique por separado para C# pronto.

+0

Bueno, eso suena lo suficientemente bueno para mí!Voy a descargar y jugar. Estoy investigando una solución agradable, rápida y compacta para una implementación venerable de CORBA, por lo que la calidad de producción es una de las características más importantes. – Fortyrunner

3

Doh .... John Skeet me ganó.

Usted tiene que mirar en la página Other languages implementations en la página de códigos protobuf Google ...

Hay 3 .net implementaciones.

dotnet-protobufs by Jon Skeets

protobuf-net by Marc Gravell

protosharp

El primero es un C# clon de la protobuf original que sólo se admite C++, Java y Python.

La segunda se ha ampliado considerablemente para adaptarse mejor a C# e incluso se puede utilizar en lugar de la interacción remota nativa. Usaría esto si no estás haciendo un trabajo multiplataforma.

Cuando miré el último no vi ninguna buena razón para usarlo en los dos primeros.

+0

Um, protobuf-net es el de Marc ... ¿quisiste poner protosharp al final? –

+0

sí, lo arreglé ... – AnthonyLambert

+0

Gracias por estos enlaces. Todos me interesan, uno de los principales criterios es si son de calidad de producción. Terminé usando bibliotecas en el pasado que no han sido completadas y lo lamenté. ¡Por supuesto, lo que debería hacer es ofrecerme para ayudar a terminarlos! – Fortyrunner

Cuestiones relacionadas