In this chapter, we started our journey by understanding the basics of protocol buffers. Then, we came across the protocol buffers language, which has many types such as scalar, enumeration, and repeated types. We saw a few analogies between JSON and protocol buffers. We learned why protocol buffers are more memory efficient than the plain JSON data format. We defined a sample protocol buffer by simulating a network interface. The message
keyword is used to define messages in a protocol buffer.
Next, we installed the protoc
compiler to compile our files written in the protocol buffer language. Then, we saw how to compile a .proto
file to generate a .go
file. This Go file has all the structs and interfaces for the main program to consume. Next, we wrote a protocol buffer for an address book and person. We saw how to use grpc.Marshal
to serialize Go structs into binary, transmittable data. We also found out that the conversion from protocol buffer to JSON and vice versa is very easily...