Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Mindfulness Personal Development Personal Transformation Meditation Life Purpose Coaching Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Data Science
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee

This course includes:

  • 3.5 hours on-demand video
  • 17 articles
  • Full lifetime access
  • Access on mobile and TV
Development Programming Languages Data Storage

Complete Guide to Protocol Buffers 3 [Java, Golang, Python]

Google Protobuf with examples and exercises. Code in Java Go Python. Say Goodbye to JSON & XML. Pre-req to gRPC
Bestseller
Rating: 4.6 out of 54.6 (2,028 ratings)
11,723 students
Created by Stephane Maarek | AWS Certified Solutions Architect & Developer Associate
Last updated 1/2021
English
30-Day Money-Back Guarantee

What you'll learn

  • Write simple and complex .proto files
  • Practice Exercises to Confirm the Learnings
  • Leverage Imports and Packages appropriately
  • Generate Code using `protoc` in any language
  • Code in Java with Protocol Buffers
  • Understand how Data Evolution works for Protobuf
  • Learn about advanced Protocol Buffers concepts
Curated for the Udemy for Business collection

Course content

11 sections • 69 lectures • 3h 39m total length

  • Preview05:24
  • How are Protocol Buffers used?
    Preview02:31
  • Preview03:09
  • About your instructor
    02:20

  • Code Download
    00:14
  • VSCode Setup (optional)
    00:26

  • Preview01:54
  • Scalar Types
    04:10
  • Tags
    01:32
  • Repeated Fields
    01:20
  • Comments
    03:00
  • Default Values for Fields
    00:56
  • Enumerations (Enums)
    02:50
  • Practice Exercises I
    00:17
  • Solution to Practice Exercises I
    04:30

  • Defining Multiple Messages in the Same File
    01:59
  • Nesting Messages
    02:28
  • Imports
    02:33
  • Packages
    02:09
  • Practice Exercise II
    00:16
  • Solution to Practice Exercises II
    03:53

  • Setup Protoc Compiler
    00:50
  • Use `protoc` to generate code in any language
    04:58
  • Practice Using `protoc`
    00:11

  • Setup & Code Download in Java
    00:13
  • Gradle Project Setup & Code Generation
    12:05
  • Simple Message Creation in Java
    11:47
  • Dealing with Enums in Java
    04:41
  • Creating a Complex Message in Java
    07:30
  • Java Options
    03:39
  • Conversion to JSON in Java
    05:09
  • Practice Exercise Java (self-guided)
    00:11
  • What about Maven?
    00:24

  • Setup & Code Download in Golang
    00:18
  • Code generation in Golang
    05:21
  • Simple Proto Struct in Golang
    03:50
  • go_package option
    01:55
  • Reading and Writing to Disk
    09:07
  • Reading and Writing to JSON
    06:38
  • Enum Proto Struct in Golang
    04:12
  • Complex Proto Struct in Golang
    04:58
  • Practice Exercise Golang (self-guided)
    00:12
  • GoGo Protobuf as an Alternative
    01:04

  • Setup & Code Download in Python
    00:16
  • Code generation in Python
    07:11
  • Simple Proto Message in Python
    09:11
  • Enum Proto Message in Python
    06:23
  • Complex Proto Message in Python
    09:53
  • Practice Exercise Python (self-guided)
    00:11

  • The need for updating the protocol
    02:18
  • Rules for Data Evolution
    01:24
  • Adding Fields
    01:37
  • Renaming Fields
    00:35
  • Removing Fields
    02:09
  • Reserved Keyword
    01:19
  • Beware of Defaults
    02:00
  • Evolving Enum Fields
    01:41

  • Integer Types Deep Dive
    03:58
  • Advanced Data Types (oneof, map, Timestamp and Duration)
    04:05
  • Protocol Buffers Options
    01:13
  • Naming Conventions
    01:35
  • Uber style guiding
    00:07
  • Services
    03:23
  • Introduction to gRPC (from gRPC Course)
    08:06
  • Protocol Buffers Internals
    09:38

Requirements

  • Some programming background (Java, Python or Go for example)
  • Previous experience with other formats such as XML or JSON is preferred

Description

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 with Protocol Buffers
> Learn about advanced Protocol Buffers concepts

Note: This course assumes you have some knowledge about Programming and JSON / XML

Instructor

Stephane Maarek is the instructor of this course. He is the author of highly successful courses such as Apache Kafka Series and AWS Series. He is passionate about micro-services and data. He has already taught to 40000+ students and received 12000+ reviews.

He shares all his Data knowledge on the platform, taking the time to explain every concept and provide students with both theoretical and practical dimensions. You are in good hands!

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

  • 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

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!

This is the course that could change your data skills.  

Learning and getting hands-on on Protocol Buffers helps you to enhance your career opportunities and helps to boost your income. An investment in your career is an investment in yourself.  Don’t procrastinate. There is no time like the present to take charge of your career. Take your career to the next level by learning Protocol Buffers today!

Take the course now, completely risk free !

Who this course is for:

  • Developers who want to understand how to write .proto files and write code to create Protocol Buffer data
  • Architects who want to understand how Protocol Buffers works and be useful for their solution archicture

Featured review

Jesho Carmel
Jesho Carmel
24 courses
14 reviews
Rating: 5.0 out of 5a year ago
The course everything the essentials and the basics of protocol buffers 3 or protobuf to be short. Stephane is a good tutor with concise videos and clear explanations. My 4th course with Stephane and looking forward to the gRPC golang course.

Instructor

Stephane Maarek | AWS Certified Solutions Architect & Developer Associate
Best Selling Instructor, Kafka Guru, 9x AWS Certified
Stephane Maarek | AWS Certified Solutions Architect & Developer Associate
  • 4.7 Instructor Rating
  • 206,410 Reviews
  • 683,985 Students
  • 38 Courses

Stephane is a solutions architect, consultant and software developer that has a particular interest in all things related to Big Data, Cloud & API. He's also a many-times best seller instructor on Udemy for his courses in Apache Kafka and AWS.

[See FAQ below to see in which order you can take my courses]

Stéphane is recognized as an AWS Hero and is an AWS Certified Solutions Architect Professional & AWS Certified DevOps Professional. He loves to teach people how to use the AWS properly, to get them ready for their AWS certifications, and most importantly for the real world.

He also loves Apache Kafka. He sits on the 2019 Program Committee organizing the Kafka Summit in New York, London and San Francisco. He is also an active member of the Apache Kafka community, authoring blogs on Medium and a guest blog for Confluent.  

During his spare time he enjoys cooking, practicing yoga, surfing, watching TV shows, and traveling to awesome destinations!

FAQ: In which order should you learn?...

AWS Cloud: Start with AWS Certified Solutions Architect Associate, then move on to AWS Certified Developer Associate and then AWS Certified SysOps Administrator. Afterwards you can either do AWS Certified Solutions Architect Professional or AWS Certified DevOps Professional, or a specialty certification of your choosing. Once ready, you can learn AWS Lambda and AWS CloudFormation in depth, or do the AWS Big Data certification.

Apache Kafka: Start with Apache Kafka for Beginners, then you can learn Connect, Streams and Schema Registry if you're a developer, and Setup and Monitoring courses if you're an admin. Both tracks are needed to pass the Confluent Kafka certification.

gRPC: First do the protocol buffers course, then move on to gRPC Java or gRPC Golang course.


In order to share knowledge I am not able to respond to private messages on Udemy. If you're a student, please ask questions inside the course. Thanks for understanding!

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.