Version protobuf2, protobuf3
C# 下 protobuf 有 3 個版本
- 僅支持 protobuf2 的 jskeet
原本是 jskeet/protobuf-csharp-port 第三方支援的,
但是這個庫當(dāng)前已經(jīng)廢棄了.
這個版本僅僅支持 protobuf2.
- 僅支持 protobuf3 的 Google 官方庫
jskeet/protobuf-csharp-port 廢棄之后, google 接管過來了
現(xiàn)在 C# 也并入了 google 的官方支持
google/protobuf
這個版本支持了protobuf3, 但是對protobuf2不兼容.
Google官方的protobuf有個缺點, 就是無法判斷一個 Field 是否設(shè)置
-- 缺少 has*_function().
包括Unity項目在內(nèi)的所有項目所使用的protobuf都采用了這個庫.
這個庫的序列化/反序列化等提供的 API 和 Google 的完全不一樣.
可是, 相比 Google 版本提供了很棒的 ToString() 方法,
這個版本沒有提供. 在調(diào)試輸出時比較麻煩.