User Tools

Site Tools


Sidebar

Welcome to DIDO WIKI

dido:public:ra:xapend:xapend.b_stds:defact:google:protobuf

This is an old revision of the document!


Protocol Buffers

return to the de facto Standards bodies

Source: The following is from Google ''Protocol Buffers '' site

Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages.
Table 1: Data Sheet for Protocol Buffers.
Characteristic Value
Paradigm Multi-paradigm: concurrent, functional,1) imperative, object-oriented 2)3)
Typing Inferred, static, strong, structural4)5)
Original author(s) Robert Griesemer, Rob Pike, Ken Thompson
Developer The Go Authors6)
Initial release 10 November 2009
Stable release 1.12.5 / May 6, 2019;7)
Repository git.kernel.org/pub/scm/git/git.git/
Written in Go, assembly language (gc); C++ (gccgo)
Operating system DragonFly BSD, FreeBSD, Linux, macOS, NetBSD, OpenBSD,8) Plan 9,9) Solaris, Windows
Available in English
Type Version control
License BSD-style10) + patent grant11)
Website https://golang.org/
1)
“First-Class Functions in Go”. Retrieved November 14, 2018. Go supports … a functional programming style in a strongly typed language.
2)
Is Go an object-oriented language?“. Retrieved April 13, 2019. Although Go has types and methods and allows an object-oriented style of programming, there is no type hierarchy.
3)
“Go: code that grows with grace”. Retrieved June 24, 2018. Go is Object Oriented, but not in the usual way.
4)
“Why doesn't Go have “implements” declarations?”. golang.org. Retrieved October 1, 2015.
5)
Pike, Rob (December 22, 2014). “Rob Pike on Twitter”. Retrieved March 13, 2016. Go has structural typing, not duck typing. Full interface satisfaction is checked and required.
6)
Text file LICENSE”. The Go Programming Language. Google. Retrieved October 5, 2012.
7)
“Release History - The Go Programming Language”. Retrieved April 19, 2019.
8)
“lang/go: go-1.4 – Go programming language”. OpenBSD ports. December 23, 2014. Retrieved January 19, 2015.
9)
“Go Porting Efforts”. Go Language Resources. cat-v. January 12, 2010. Retrieved January 18, 2010.
10)
Text file LICENSE“. The Go Programming Language. Google. Retrieved October 5, 2012.
11)
Additional IP Rights Grant”. The Go Programming Language. Google. Retrieved October 5, 2012.
dido/public/ra/xapend/xapend.b_stds/defact/google/protobuf.1558641277.txt.gz · Last modified: 2019/05/23 15:54 by nick
Translations of this page: