
Build a solid foundation in protocol buffers through theory and mini exercises, then practice advanced concepts, serialization and deserialization, compare with JSON, XML, and CSV, and design messages and services.
Deliver a quick, important message about course reviews and when to rate the course, noting the programming portion comes in part two.
Explore protocol buffers using proto three syntax, define a simple account message with id, name, and a validated boolean, and learn that a field comprises type, name, and tag.
Define multiple messages and enums in the same Protocol Buffers file, including references between messages and enums with values, and prepare for nested types in the next lecture.
Define a package in a proto file and declare message six, then import package dot proto and reference message six with my dot package dot message six.
Define all messages in one proto file using proto3 syntax, modeling city, street, and building in a top-down order to show design impact and redundancy with address.
Set up a Gradle project in IntelliJ, apply the protobuf plugin, configure protoc to 3.19.4, and generate Java sources from a dummy.proto file.
Learn java code generation options for proto by renaming the java package to com.example.options and enabling one class per file with java_multiple_files.
Define two protobuf messages in golang: a dummy with id and name, and a complex containing a dummy field and a repeated dummy list, then generate and print complex object.
Learn to serialize protobuf messages to json and deserialize them back in go using toJson and fromJson with proto json marshal and unmarshal.
Use the oneof keyword in proto3 to model a result that holds a message or an id, generate Python code, and show how a new field clears the old.
Learn how to write a protobuf message to a binary file and read it back, using a simple main.py function, byte serialization, and type-based reconstruction before moving to json serialization.
Serialize a message to Json and deserialize from Json using google.protobuf.json_format in Python. Demonstrate indent, preserving proto names, and ignoring unknown fields during Json parsing.
Protocol Buffers (protobuf) is a fundamental data serialization format that every Data Engineer should know about. It is leveraged by many top tech companies such as Google and enables micro-services to transfer data in a format that is safe and efficient.
In this course, we are going to explore in depth, with hands-on lectures, all the aspects of Protocol Buffers 3.
In just a few hours, you will know everything you need to know to create simple and complex .proto files, and write code in your Favourite Programming language such as Java, Python and Go. Protocol Buffers generates all the boilerplate code for you!
Stop using XML and JSON and start using a Data Format that will allow you to create the most efficient APIs.
Complete Guide to Protocol Buffers 3 is the best way to get a great overview of all the possibilities offered by Protocol Buffers
> Write simple and complex .proto files
> Practice Exercises to Confirm the learnings
> Leverage Imports and Packages appropriately
> Generate Code using `protoc`
> Code in Java, Go and Python with Protocol Buffers
> Learn about advanced Protocol Buffers concepts
Note: This course assumes you have some knowledge about Programming and JSON / XML
Section outline:
Protocol Buffers Course Introduction: Get an understand of the course objectives, how the course is structured, download the course code and get ready!
Protocol Buffers Basics I: Learn how to create your first messages using Scalar Types. Practice with 5 exercises
Protocol Buffers Basics II: Learn how to create complex messages, and organise your code in different files and packages. Practice with 4 exercises
Setting up Protoc Compiler: Setup the protoc compiler and learn how to generate code in any language
Java Programming with Protocol Buffers: Write your Protocol Buffers Data in Java
Golang Programming with Protocol Buffers: Write your Protocol Buffers Data in Golang
Python Programming with Protocol Buffers: Write your Protocol Buffers Data in Python
Data Evolution with Protobuf: Evolve your protocol buffers file in a safe way in order to add or remove fields without breaking previous code
Protocol Buffers Advanced: Advanced Types in Protocol Buffers as well as Options, Integer Types, and an introduction to RPC Services with gRPC
Instructor
My name is Clément Jean, and I'll be your instructor in this course. I teach about Protocol Buffers and gRPC with my focus always on helping my students improve their professional proficiencies. I am also the author of some of the most highly-rated & best-selling courses.
With development being a widely accepted and pursued career, I've decided it's time for students to properly learn about Protocol Buffers. So, let’s kick start the course! You are in good hands!
This Course Also Comes With:
Lifetime Access to All Future Updates
A responsive instructor in the Q&A Section
Links to interesting articles, and lots of good code to base your next template onto
Udemy Certificate of Completion Ready for Download
A 30 Day "No Questions Asked" Money Back Guarantee!
I hope to see you inside the course!