Building Web APIs with gRPC The Complete Guide
What you’ll learn
Basics of gRPC
How gRPC stacks against REST API
Using Protobuf to send messages between systems
The 4 communication types of gRPC
Error handling in gRPC
Implementing deadlines in gRPC
Implementing authorization and security in gRPC
Using gRPC in the browser
Requirements
Understand the basic concepts of APIs
Understand the basic concepts of HTTP
Basic development background
Description
Web API is usually the most important part in a web app.This is how you expose your web app to the world, and to other users, and it must be fast, easy to use, and up-to-date.gRPC is one of the most advanced and exciting web APIs in the industry today, and it adds a lot of value to any web app. Capabilities such as server and client streaming, strongly-typed messages, blazing-fast performance and more make it an important asset in every developer and architect toolbox.And this practical, hands-on course will make you an expert in gRPC.We are going to cover all aspects of gRPC, from the very basics to the most advanced topics. Here are some of the topics we’re going to discuss:- How gRPC stacks against REST API- Basic concepts of gRPC- The 4 communication types of gRPC: – Unary RPC – Client-side streaming – Server-side streaming – Bi-directional streaming- Best practices of designing gRPC API- Using Protobuf, the message serialization format used by gRPC- Error handling in gRPC- Authorization and SecurityAnd lots more.Now, in order to make this course as valuable as possible, I made it extremely practical and hands-on.We’re going to build, together, a fully-functional, full-blown gRPC-based chat app, utilizing all the concepts we’ll learn in the course, and we’re going to use multiple platforms for that – nodeJS and .NET.Note: You don’t have to be a .NET or nodeJS developer to take this course. I’m going to guide you through all the steps in the development process, and make sure everything will work as expected.By the end of this course, you’ll be an expert in gRPC, not just in theory, but in practicality.There is no other course like this! This is the only course that will take you all the way to be an expert in gRPC, from the very beginning to topics known to few, and will do that in an extremely practical and hands-on fashion.———————————————————-What do my students have to say about my courses?————————————————————“well done – The course was very practical” – Sam “Good explanation on the topics covered, “Soft Skills” section is a great addition of topics” – Sergio “[The course] given me the confidence to go out to the market and advertise myself as such [an Architect]” – Mathew”Life Changing” – ArivazhaganAnd lots more…————————————————————Who is this course for?————————————————————Any person who is involved in web development, even system analyst, can profit from this course. That includes:- Junior developers- Senior developers- Architects- Anyone else involved in web developmentIf you’re not sure if this course is for you – drop me a note!————————————————————What are the prerequisites for this course?————————————————————Students are expected to be able to understand code , and to know how the internet is working (HTTP protocol, Request / Response model, and so on).————————————————————About Me————————————————————I’ve been in the software industry for more than 25 years, and a Software Architect for more than 20 years, working with a variety of clients – Fortune 100 enterprises, start-ups, govt. entities, defense, telco, banking, and lots more.I’m an avid speaker and trainer, having trained thousands of students in various courses.I love what I do, and my greatest passion (well, besides my family…) is designing modern, practical, and reliable systems for my clients, using the best possible API.
Overview
Section 1: Welcome
Lecture 1 Course Introduction
Lecture 2 Join the Software Architects Community
Lecture 3 Get the course slides
Lecture 4 Who Is This Course For?
Lecture 5 Agenda
Section 2: API Basics
Lecture 6 Read this before going through this section
Lecture 7 What is an API?
Lecture 8 API Types
Lecture 9 Importance of API
Lecture 10 Why Do You Need a Well Designed API?
Section 3: Web APIs
Lecture 11 Web APIs
Lecture 12 SOAP
Lecture 13 REST
Lecture 14 GraphQL
Lecture 15 gRPC
Section 4: gRPC Basics
Lecture 16 Problems with REST API
Lecture 17 History of gRPC
Lecture 18 gRPC Basics
Lecture 19 RPC
Lecture 20 Communication Styles
Lecture 21 ProtoBuf
Lecture 22 Advanced Topics
Section 5: Preparing the Environment
Lecture 23 Introduction
Lecture 24 Installing .NET SDK
Lecture 25 Installing nodeJS
Lecture 26 Installing VS Code and Extensions
Section 6: Introducing Our App
Lecture 27 Introduction
Lecture 28 The gRoom App
Section 7: Protobuf
Lecture 29 Introduction
Lecture 30 Protobuf Usage Flow
Lecture 31 Messages Basic Syntax
Lecture 32 Configuring Protobuf in .NET
Lecture 33 Developing with Protobuf
Lecture 34 Default Values
Lecture 35 Working With Composite Types
Lecture 36 Updating a Message Type
Lecture 37 Oneof
Lecture 38 Maps
Lecture 39 Defining Services
Section 8: Building the gRoom Server
Lecture 40 Introduction
Lecture 41 Creating and Configuring the Project
Lecture 42 Building the gRoom Service
Lecture 43 Testing the Service with BloomRPC
Section 9: Unary RPC
Lecture 44 Introduction
Lecture 45 Implementing the Client
Section 10: Client-side Streaming
Lecture 46 Introduction
Lecture 47 Implementing Client-side Streaming in the Server
Lecture 48 Implementing the Client
Section 11: Server-side Streaming
Lecture 49 Introduction
Lecture 50 Implementing Server-side Streaming in the Server
Lecture 51 Connecting the News Bot to the Server Stream
Lecture 52 Implementing the Client
Section 12: Bi-Directional Streaming
Lecture 53 Introduction
Lecture 54 Implementing Bi-Directional Streaming in the Server
Lecture 55 Testing the Server
Lecture 56 Implementing the Client
Lecture 57 Final Touches
Lecture 58 Putting It All Together
Section 13: Advanced Topics
Lecture 59 Introduction
Lecture 60 Deadlines
Lecture 61 Implementing Deadlines
Lecture 62 Error Handling
Lecture 63 Adding Error Handling to gRoom
Lecture 64 Cancelling Requests
Lecture 65 Implementing Request Cancellation
Lecture 66 Authentication
Lecture 67 Introduction to OAuth
Lecture 68 Adding Authentication to gRoom
Section 14: gRPC in the Browser
Lecture 69 Introduction
Lecture 70 Implementing gRPC in the Browser
Lecture 71 Configuring the Server for gRPC-Web
Lecture 72 Using gRPC-Web in the Browser
Section 15: Conclusion
Lecture 73 Conclusion
Lecture 74 Bonus: Next Steps
Developers who would like to learn about gRPC,Software Architects designing web APIs,Anyone involved in web development
Course Information:
Udemy | English | 5h 58m | 2.17 GB
Created by: Memi Lavi
You Can See More Courses in the Developer >> Greetings from CourseDown.com