代码之家  ›  专栏  ›  技术社区  ›  Fortyrunner

在.NET中是否有生产质量的Google协议缓冲区实现?

  •  5
  • Fortyrunner  · 技术社区  · 16 年前

    标题上写着!

    我知道jon skeet正在研究一个实现,我听到了一个采访(dot net rocks?)他暗示那是水渍险。

    最新的 page 只显示版本号。那么,现在生产准备好了吗?

    谢谢

    3 回复  |  直到 16 年前
        1
  •  11
  •   Jon Skeet    16 年前

    协议缓冲区有两种主要实现:

    • Mine (大部分是Java代码的端口)
    • Marc Gravell ProtoBuf-Net (对WCF更友好,地面重新实施)

    我知道不久前马克正在进行一次重大的重构;我不知道他是否还在。

    据我所知,我自己的端口工作正常(除了几天前报道的打包类型大小的错误),但在生成方面缺少一些修饰。有些用户对Silverlight兼容性感兴趣,我一直在努力,但还没有尝试过。(基本上,我使用的Silverlight中缺少一些方法;我认为我 可以 现在已经迁移了所有这些内容-我需要检查。)

    我不知道这两种实现是否在生产中用于任何系统,但我很乐意尝试修复您提出的任何错误。注意我是 打算实现出现在主2.2代码中的“lite”PBS;它们会使已经复杂的继承变得更糟糕。我将引入一个额外的选项,以允许模式(速度/尺寸优化)尽快单独指定为C。

        2
  •  3
  •   AnthonyLambert    16 年前

    多哈…约翰·斯基特打败了我!

    你需要看看 Other languages implementations 在Protobuf Google代码页上…

    有3个.NET实现。

    dotnet-protobufs by Jon Skeets

    protobuf-net by Marc Gravell

    protosharp

    第一个是原原型Bug的C克隆,它只支持C++、Java和Python。

    第二个已经被大大扩展,以适应更多的C,甚至可以用来代替本地远程处理。如果你不做跨平台工作,我会用这个。

    当我看最后一个的时候,没有看到任何好的理由在前两个阶段使用它。

        3
  •  1
  •   Dirk is no longer here    16 年前

    你看到这个了吗 protobuf-net 也在谷歌代码上?