2009-09-03 8 views

Odpowiedz

11

Istnieją dwa główne implementacje protokołu buforów:

  • Mine (głównie port kodu Java) ProtoBuf-Net (więcej WCF przyjazny, ziemia-up reimplementacja)
  • Marc Gravell za

Wiem, że Marc był w trakcie poważnego refaktoryzacji jakiś czas temu; Nie wiem, czy nadal jest.

Mój własny port działa na tyle, na ile jestem tego świadomy (błąd w spakowanym typie rozmiarów, o którym doniesiono kilka dni temu), ale brakuje mu polerowania po stronie generowania. Niektórzy użytkownicy są zainteresowani kompatybilnością z Silverlight, nad którą pracowałem, ale jeszcze nie próbowałem. (Zasadniczo istnieje kilka metod, których nie ma w Silverlight, których używałem, myślę, że mogą teraz migrować wszystkie z nich - muszę to sprawdzić.)

Nie wiem, czy wdrożenie jest w użytku produkcyjnym dla dowolnych systemów, ale z przyjemnością spróbuję naprawić wszelkie zgłaszane błędy. Zauważ, że jestem , a nie zamierzam wprowadzić "Lite" PB, które pojawiły się w głównym kodzie 2.2; spowodują jeszcze bardziej skomplikowane dziedziczenie. Wprowadzę dodatkową opcję, aby umożliwić niedługo określony tryb (optymalizacja prędkości/rozmiaru) osobno dla C#.

+0

Cóż, brzmi to wystarczająco dobrze dla mnie!Pobiorę się i będę grał z tym. Badam ładne, kompaktowe rozwiązanie do szacownej implementacji CORBA, a więc jakość produkcji jest jedną z najważniejszych cech. – Fortyrunner

3

Doh .... John Skeet pobił mnie!

Trzeba spojrzeć na stronie Other languages implementations na stronie kodu google protobuf ...

Istnieją 3 .net implementacje.

dotnet-protobufs by Jon Skeets

protobuf-net by Marc Gravell

protosharp

Pierwszy z nich to C# klonem oryginalnej Protobuf których tylko obsługiwanym C++, Java i Python.

Drugi został znacznie rozszerzony, aby pasował bardziej do C# i może być nawet użyty w miejscu macierzystego zdalnego sterowania. Użyłbym tego, jeśli nie pracujesz na wielu platformach.

Kiedy patrzyłem na ostatni, nie widziałem żadnego powodu, aby używać go w ciągu pierwszych dwóch.

+0

Um, protobuf-net to jedna z marek Marca ... czy chcesz umieścić protosharp na końcu? –

+0

Tak, naprawiłem to ... – AnthonyLambert

+0

Dzięki za te linki. Wszystkie są dla mnie interesujące, jednym z głównych kryteriów jest to, czy są one jakości produkcji. W przeszłości korzystałem z bibliotek, które nie były kompletne i żałowałem tego. Oczywiście, co powinienem zrobić, to zaoferować pomoc w ich wykończeniu! – Fortyrunner

Powiązane problemy