「Protocol Buffers」修訂間的差異

出自ChevyneWiki
跳至導覽 跳至搜尋
行 1: 行 1:
Protocol Buffers 是一種序列化資料結構的協定。<br />
+
Protocol Buffers 是一種序列化資料結構的協定。
  +
對於透過管道(pipeline)或儲存資料進行通訊的程式開發上是很有用的。<br />
+
對於透過管道(pipeline)或儲存資料進行通訊的程式開發上是很有用的。
這個方法包含一個介面描述語言,描述一些資料結構,並提供程式工具根據這些描述產生程式碼,用於將這些資料結構產生或解析資料串流。<br />
 
  +
 
這個方法包含一個介面描述語言,描述一些資料結構,並提供程式工具根據這些描述產生程式碼,用於將這些資料結構產生或解析資料串流。
 
==Language support==
 
==Language support==
  +
Protobuf 2.0 provides a code generator for C++, Java, C#, and Python.
Protobuf 2.0 provides a [[Code generation (compiler)|code generator]] for [[C++]], [[Java (programming language)|Java]], [[C Sharp (programming language)|C#]],<ref>{{Cite web| title = Protocol Buffers in C# | work = Code Blockage| access-date = 2017-05-12| url = http://codeblockage.blogspot.com/2015/08/protocol-buffers-in-c.html}}</ref> and [[Python (programming language)|Python]].<ref>{{Cite web| title = Protocol Buffers Language Guide| work = Google Developers| access-date = 2016-04-21| url = https://developers.google.com/protocol-buffers/docs/proto}}</ref>
 
   
Third-party implementations are also available for JavaScript.<ref>{{cite web|url=https://github.com/dcodeIO/protobuf.js |title=Protocol Buffers for JavaScript. |publisher=github.com |access-date=2016-05-14}}</ref>
+
Third-party implementations are also available for JavaScript.
   
 
Protobuf 3.0 provides a code generator for [[C++]], [[Java (programming language)|Java]] (including JavaNano, a dialect intended for [[System resource|low-resource environments]]), [[Python (programming language)|Python]], [[Go (programming language)|Go]], [[Ruby (programming language)|Ruby]], [[Objective-C]], [[C Sharp (programming language)|C#]].<ref>{{Cite web|title=Language Guide (proto3) {{!}} Protocol Buffers|url=https://developers.google.com/protocol-buffers/docs/proto3|access-date=2020-08-09|website=Google Developers|language=en}}</ref> It also supports JavaScript since 3.0.0-beta-2.<ref>{{Cite web|title=Release Protocol Buffers v3.0.0-beta-2 · protocolbuffers/protobuf|url=https://github.com/protocolbuffers/protobuf/releases/tag/v3.0.0-beta-2|access-date=2020-08-09|website=GitHub|language=en}}</ref>
 
Protobuf 3.0 provides a code generator for [[C++]], [[Java (programming language)|Java]] (including JavaNano, a dialect intended for [[System resource|low-resource environments]]), [[Python (programming language)|Python]], [[Go (programming language)|Go]], [[Ruby (programming language)|Ruby]], [[Objective-C]], [[C Sharp (programming language)|C#]].<ref>{{Cite web|title=Language Guide (proto3) {{!}} Protocol Buffers|url=https://developers.google.com/protocol-buffers/docs/proto3|access-date=2020-08-09|website=Google Developers|language=en}}</ref> It also supports JavaScript since 3.0.0-beta-2.<ref>{{Cite web|title=Release Protocol Buffers v3.0.0-beta-2 · protocolbuffers/protobuf|url=https://github.com/protocolbuffers/protobuf/releases/tag/v3.0.0-beta-2|access-date=2020-08-09|website=GitHub|language=en}}</ref>

於 2021年1月27日 (三) 21:34 的修訂

Protocol Buffers 是一種序列化資料結構的協定。

對於透過管道(pipeline)或儲存資料進行通訊的程式開發上是很有用的。

這個方法包含一個介面描述語言,描述一些資料結構,並提供程式工具根據這些描述產生程式碼,用於將這些資料結構產生或解析資料串流。

Language support

Protobuf 2.0 provides a code generator for C++, Java, C#, and Python.

Third-party implementations are also available for JavaScript.

Protobuf 3.0 provides a code generator for C++, Java (including JavaNano, a dialect intended for low-resource environments), Python, Go, Ruby, Objective-C, C#.[1] It also supports JavaScript since 3.0.0-beta-2.[2]

Protobuf 4.0 is largely the same as 3.0 but the C extension for PHP being rewritten, dropping support for PHP 5.[3]

Third-party implementations are also available for C,[4][5] Dart, Haskell,[6] Perl, PHP, R,[7] Rust,[8][9][10] Scala, Swift,[11] Julia[12] and Nim[13]