Mô tả

In this course, you will learn microservices API development using the Hexagonal Architecture. We will start the development from the scratch. Taking the small steps, we will be building the foundation by continuously improving the design of the application. We will explore how the dependency inversion plays a pivotal role in implementing the Hexagonal architecture.

Later on, we will be building an auth API to manage the Authentication and Authorization of our main application.

By the end of the course, we will learn to unit test various components using state and mocks and will also understand the complexities in testing those components.


Bạn sẽ học được gì

Apply SOLID design principles in Go

Master the Hexagonal Architecture design and its implementation

Implement authentication and authorization using JWT access & refresh tokens

Apply RBAC Authorization to APIs

Understand how dependency injection works in Go

Understand and implement the structured logging

Build microservices API in Go

Code Refactoring in Go

Decoupling the domain objects and DTOs

Working with small steps

Take the informed decision on choosing various libraries

Understand the role of multiplexer in HTTP web server

Encoding structs to JSON or XML

Understand the routing capabilities of gorilla/mux

Design your own error library

State based unit testing

Unit testing using the mocks

Yêu cầu

  • Student should know basic golang programming concepts like structs, receiver functions and interface
  • Student should be comfortable with object oriented programming concepts

Nội dung khoá học

6 sections

Introduction

3 lectures
Welcome to the course
02:44
Links & resources
00:12
Getting started
02:07

Router Basics

6 lectures
Hello World
06:42
JSON Encoding
05:08
XML Encoding
04:46
Refactoring & Go modules
07:56
gorialla/mux
09:46
Build a time API
1 question

Application Development

16 lectures
Introduction to Hexagonal Architecture
06:33
Implementing Hexagonal Architecture
15:30
Database adapter
12:27
Error handling Part 1
11:32
Error handling Part 2
10:43
Refactor error handling
08:24
Coding Exercise: Fix GetAllCustomers
1 question
Enhance GetAllCustomers API
1 question
Structured Logging
16:21
Sqlx
11:33
Data Transfer Object
10:42
Application Configuration
09:30
New Bank Account: Part 1
14:51
New Bank Account: Part 2
23:10
Assignment 4
01:29
Solution: Assignment 4
08:33

Security

4 lectures
Securing Application
02:19
JWT Tokens
08:11
Auth Server: Login API
14:22
Auth Server: Verify API
16:45

Unit Testing

3 lectures
Unit testing: State based test
13:34
Unit Testing: Testing routes
19:08
Unit testing: Testing Services
21:00

Advance Topics

9 lectures
Introduction
02:22
Logger and AppError as go-module
07:48
banking-lib module in banking api
05:04
banking-lib module in banking auth
10:24
Refactoring the Verify API
16:45
Refresh Token: Introduction
03:42
Generating refresh token: Part 1
12:47
Generating refresh token: Part 2
11:52
Refreshing an access token
24:46

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.