Golang Training

[Pages:11]Golang Training

?Golang.Expert

Course Project 1

Complete User Authentication System

We will create a complete backend system that will handle the most sensitive part of any application that is User Authentication.

We will master the Following Skills in this project

? Using Military Grade Encryption Libraries. E.g. HMAC, BCRYPT ? Storing Remember Tokens in Cookies. ? Build your own Rest API. Handling JSON Data coming through our API. ? Handling database Connection using GORM. ? Adding Middleware to restrict access to logged-in users only. ? Working with Environment Variables to save sensitive info.

Course Project 2

GraphQL with Golang

We will create an API that will fetch Movie details from our DB using GraphQl. GraphQL is developed by Facebook and it is very quickly becoming the norm in the industry to build modern APIs.

We will master the Following Skills in this project

? We will use the gqlgen library to interact with GraphQL using Golang. ? Building mutations and query resolvers using Go. ? Interact with /graphql endpoint using Go. ? Connecting to PostgreSQL using GraphQL. ? Connecting our User Service to GraphQL.

Golang Curriculum

?Golang.Expert

Section 1: Introduction to GO Ecosystem

? Setting up Go for PC, Mac, Linux ? Introduction to Modules ? What is Gopath? ? go.sum vs go.mod ? Adding Dependency using go modules.

Section 2: Introduction to Go Basics

? Go build ? Packages ? Exporting Functions and Variables ? Go Standard Library ? Library package Vs Binary Package

Section 3: Type System of Go

? Variables ? Type inference ? Operators ? Assign to multiple variables ? Using Printf and it's format specifier. ? Strings and Raw String Literal ? Define your own type

Section 4: Control Flow and Introduction to Error handling

? If Else ? Working with os.Args ? Loops ? Switch ? What is a nil value ? Error value ? Error handling example

Section 5: Array in Go

? What is an array in Go? ? Declaring Array using shorthand operator. ? Multidimensional Array ? For range on arrays ? Compare array values

Section 6: Slices and Internals

? Differences between slices and arrays ? Comparing a slice to another one ? Appending to a Slice ? Slicing: Let's cut that slice! ? What is a Backing Array? ? Length and capacity of a slice ? make(): Preallocate the backing array ? copy(): Copy elements between slices ? File finder program

Section 7: Maps in Golang

? Creating maps ? Maps Example ? Map with Composite Type ? For range on maps

Section 8: Structs in Go

? Create a struct ? Storing Complex type in Struct ? Struct Embedding ? Encode values to JSON ? Decode values from JSON

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download