LEARNING PATH: Go: The Complete Developer's Guide to Golang

Course

Online

£ 40 + VAT

Description

  • Type

    Course

  • Methodology

    Online

  • Start date

    Different dates available

Become a Full-Stack Golang Developer - Learn everything from Front & Back-End Programming to deploymentGo is one of the most powerful, efficient, and highly performant programming languages. Go has seen an increased rate of adoption mainly because it is lightweight, easy to use, and displays great robustness when performing in a variety of domains. If you're a developer who wish to learn Go programming language to become a full-stack Go developer, then this learning path is for you.This comprehensive 4-in-1 course is designed to teach you full-stack web development with Golang. You will learn to design the frontend and backend of any application along with deploying it to a cloud-based, production environment with hands-on examples. You will also learn to build various applications and enhance them in real-time.This training program includes 4 complete courses, carefully chosen to give you the most comprehensive training possible.The first course, Go Essentials for Full Stack Web Development, will start by introducing you to programming with Go. You will then learn how to install Go and how to configure your workspace and development environment. You will also learn basic Golang concepts and will explore arrays, slices, maps and user-defined types in Golang. Next, you will learn Go's built-in concurrency constructs and tools included in Go. Finally, you will implement a simple web server using Go.The second course, Back-End Web Development using Go, starts off with covering essential concepts which include web templates, the model view controller pattern, managing requests and responses, and building web forms. You will learn uploading image/video files, implementing a datastore for a variety of databases (relational, document, and in-memory), creating secure cookies, implementing authentication middleware, and implementing an asynchronous task queue to perform long-running tasks in the background.
of software development experience and has...

Facilities

Location

Start date

Online

Start date

Different dates availableEnrolment now open

About this course

Learn the essentials of Golang for frontend, backend development and deployment of apps to a cloud-based, production environment
Learn how to build custom packages, types, interfaces, and unit test suites
Create custom middleware and implement an asynchronous task queue
Understand how to develop powerful, feature-rich, client-side web applications
Build a feature-rich social media website
Deploy the Go application as a multi-container Docker application
Run the Dockerized Go application in the cloud as a system service

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Emagister S.L. (data controller) will process your data to carry out promotional activities (via email and/or phone), publish reviews, or manage incidents. You can learn about your rights and manage your preferences in the privacy policy.

Reviews

This centre's achievements

2021

All courses are up to date

The average rating is higher than 3.7

More than 50 reviews in the last 12 months

This centre has featured on Emagister for 6 years

Subjects

  • Web Development
  • Media
  • Install
  • Web Server
  • Programming
  • Social Media
  • Web
  • Design
  • Syntax
  • Installation
  • Works
  • Server
  • Testing
  • Benefits

Course programme

Go Essentials for Full Stack Web Development 29 lectures 03:14:44 Go Essentials for Full Stack Web Development - The Course Overview This video provides an overview of the entire course. A Brief Introduction to Programming This video is intended to teach some basic programming concepts for viewers that are completely new to programming.
  • Know what a computer program is
  • Understand why programming languages are important
  • Learn basic programming concepts
The Gist of Go This video shows the benefits of learning Go.
  • Learn Go’s design considerations
  • Know about Go’s simplicity
  • Get to know the other top benefits found in Go
Installing Go This video shows how to install Go on your computer.
  • Go through the Go installation process
  • Know the important Go installation details
  • Get introduced to the go command
Configuring Go The video shows how to setup your own Go development environment.
  • Learn how to set up the proper environment variables
  • Walk through writing and running a Go program
  • Get introduced to vim-go to the user
Basics - Variable Declaration, Built-in Types, Constants The viewer is in need of knowing Go basics, including performing variable declaration, knowing Go’s built-in types, and working with constants.
  • Show the viewer how to declare variables
  • Show the viewer Go’s available built-in types
  • Show the viewer how to declare and use constants
Packages The viewer needs to know how to both import packages and create their own.
  • Show the viewer the significance of importing packages
  • Show the viewer how to create their own package
  • Show how to use the package the user created
Functions The viewer needs to learn what a function is, how to declare them in Go.
  • Inform the viewer of what a function is
  • Show viewer how to declare a function in Go
  • Explain details about the various function types in Go
Conditional and Loops The viewer needs to know how to make use of Go’s control structures.
  • Demonstrate conditional if-else blocks to the viewer
  • Demonstrate the switch statement to the viewer
  • Demonstrate the for loop and its various uses
Command-line Program The viewer needs to know how to create a command line program that accepts command line arguments and prints usage information to the user of the program.
  • Demonstrate how to accept command line arguments
  • Demonstrate how to accept command line flags
  • Demonstrate the help flag included in the program
Username Syntax Checker The viewer needs a practical example showcasing all the things that they learned in this section.
  • Introduce regex pattern to check username syntax
  • Guide the viewer through how the program works
  • Show user both a failure and success scenario
Arrays The viewer needs to know how to declare and work with Go’s array data structure.
  • Show the viewer how to declare an array
  • Show the viewer how to create a matrix using arrays
  • Show the viewer how to print the matrix using 2 for loops
Slices The viewer needs to know how to declare and work with Go’s slice data structure.
  • Show the viewer how to declare a slice
  • Show the viewer how to create sub slices
  • Show the viewer how to remove and add a new element to a slice
Maps The viewer needs to know how to declare and work with Go’s map data structure.
  • Show the viewer how to declare a map
  • Show the viewer how to build the map with key-value pairs
  • Show the viewer how to sort the map alphabetically by key
Types and Interfaces The viewer needs to know how to declare and work with Go's user defined types and interfaces.
  • Show the viewer how to declare a type
  • Demonstrate how a type can implement an interface
  • Demonstrate the usefulness of the empty interface type
Social Media Post The viewer needs to know how to create an instance of their own user defined type.
  • Show the viewer how to declare a type representing a Social Media Post
  • Demonstrate how to create a map of string aliases to state value constants
  • Demonstrate how to create a new instance of the Social Media Post
Concurrency Versus Parallelism The viewer needs to know the difference between concurrency and parallelism.
  • Define and illustrate an example of concurrency.
  • Define and illustrate an example of parallelism.
  • Reveal how the illustrated examples relate to single/multi core processors.
Goroutines The viewer needs to what a goroutine is and how to invoke a function as a goroutine.
  • Define what a goroutine is
  • Show how a function can be invoked as a goroutine
  • Demonstrate an example of making the program wait for the goroutine to finish.
Channels The viewer needs to learn what a channel is, and how to use them.
  • Define a channel and introduce the arrow operator
  • Show an example of how to send and receive messages through it
  • Show an example of a buffered channel.
Range Over Channels The viewer needs to know how to range over channels.
  • Inform the viewer that we can iterate over each element as it gets received from the channel.
  • Show that we can call the close function on the channel before ranging over the channel.
  • Show how to to drain the message queue by ranging over the channel
Mutexes and Wait Groups The viewer needs to know how to use Go’s synchronization primitives.
  • Show the viewer an example of a race condition
  • Show the viewer how to use a mutex to solve the race condition.
  • Show the viewer how to concurrently get web site responses using wait groups
Concurrent Pi Computation The viewer needs a practical example of using concurrency to compute the value of Pi.
  • Introduce the viewer to the Nilakantha series to calculate Pi
  • Show the viewer how to concurrently compute Pi using goroutines and channels
  • Show the successful calculation of Pi to 11 decimal places using the program
The Go Tool Chain The viewer needs a walkthrough of the tools that come included with Go.
  • Show the user the full list of commands that come with Go
  • Walk the user through each command in the list
  • Show examples of the most commonly used commands
Documentation in Go The viewer needs to know about Go’s documentation functionality.
  • Introduce the user to accessing documentation using go doc
  • Show how to view documentation by running the web server
  • Show how the documentation gets automatically generated
Testing in Go The user needs to know how to how Go’s automated unit testing system works.
  • Introduce the user to the go test command
  • Show an example of an existing unit test
  • Show an execution of a suite of unit tests
Unit Testing the Username Syntax Checker The viewer needs to know how to create a suite of unit tests to verify the functionality of a custom package.
  • Acquaint the user to the custom package we will be testing
  • Walk through the user through the tests in the suite
  • Show the execution of all the test suite
An Introduction to HTTP The viewer needs a brief introduction to the most basic concepts of the hypertext transfer protocol (HTTP).
  • Explain how a HTTP transaction works between client and server
  • Show some commonly used HTTP request methods
  • Show some common response codes and explain their meaning
The net/http Package The viewer needs an introduction to Go’s net/http package.
  • Introduce the net/http package’s Get function
  • Show an example of using the Get function
  • Demonstrate the Get request in a sample run
A Go Web Server Instance The viewer needs to learn how to create their own web server instance using the net/http package.
  • Show the viewer how to register handler functions
  • Show the viewer how to create an HTTP server instance
  • Show examples of the web server handling various requests
Go Essentials for Full Stack Web Development - Quiz Go Essentials for Full Stack Web Development. 29 lectures 03:14:44 Go Essentials for Full Stack Web Development - The Course Overview This video provides an overview of the entire course. A Brief Introduction to Programming This video is intended to teach some basic programming concepts for viewers that are completely new to programming.
  • Know what a computer program is
  • Understand why programming languages are important
  • Learn basic programming concepts
The Gist of Go This video shows the benefits of learning Go.
  • Learn Go’s design considerations
  • Know about Go’s simplicity
  • Get to know the other top benefits found in Go
Installing Go This video shows how to install Go on your computer.
  • Go through the Go installation process
  • Know the important Go installation details
  • Get introduced to the go command
Configuring Go The video shows how to setup your own Go development environment.
  • Learn how to set up the proper environment variables
  • Walk through writing and running a Go program
  • Get introduced to vim-go to the user
Basics - Variable Declaration, Built-in Types, Constants The viewer is in need of knowing Go basics, including performing variable declaration, knowing Go’s built-in types, and working with constants.
  • Show the viewer how to declare variables
  • Show the viewer Go’s available built-in types
  • Show the viewer how to declare and use constants
Packages The viewer needs to know how to both import packages and create their own.
  • Show the viewer the significance of importing packages
  • Show the viewer how to create their own package
  • Show how to use the package the user created
Functions The viewer needs to learn what a function is, how to declare them in Go.
  • Inform the viewer of what a function is
  • Show viewer how to declare a function in Go
  • Explain details about the various function types in Go
Conditional and Loops The viewer needs to know how to make use of Go’s control structures.
  • Demonstrate conditional if-else blocks to the viewer
  • Demonstrate the switch statement to the viewer
  • Demonstrate the for loop and its various uses
Command-line Program The viewer needs to know how to create a command line program that accepts command line arguments and prints usage information to the user of the program.
  • Demonstrate how to accept command line arguments
  • Demonstrate how to accept command line flags
  • Demonstrate the help flag included in the program
Username Syntax Checker The viewer needs a practical example showcasing all the things that they learned in this section.
  • Introduce regex pattern to check username syntax
  • Guide the viewer through how the program works
  • Show user both a failure and success scenario
Arrays The viewer needs to know how to declare and work with Go’s array data structure.
  • Show the viewer how to declare an array
  • Show the viewer how to create a matrix using arrays
  • Show the viewer how to print the matrix using 2 for loops
Slices The viewer needs to know how to declare and work with Go’s slice data structure.
  • Show the viewer how to declare a slice
  • Show the viewer how to create sub slices
  • Show the viewer how to remove and add a new element to a slice
Maps The viewer needs to know how to declare and work with Go’s map data structure.
  • Show the viewer how to declare a map
  • Show the viewer how to build the map with key-value pairs
  • Show the viewer how to sort the map alphabetically by key
Types and Interfaces The viewer needs to know how to declare and work with Go's user defined types and interfaces.
  • Show the viewer how to declare a type
  • Demonstrate how a type can implement an interface
  • Demonstrate the usefulness of the empty interface type
Social Media Post The viewer needs to know how to create an instance of their own user defined type.
  • Show the viewer how to declare a type representing a Social Media Post
  • Demonstrate how to create a map of string aliases to state value constants
  • Demonstrate how to create a new instance of the Social Media Post
Concurrency Versus Parallelism The viewer needs to know the difference between concurrency and parallelism.
  • Define and illustrate an example of concurrency.
  • Define and illustrate an example of parallelism.
  • Reveal how the illustrated examples relate to single/multi core processors.
Goroutines The viewer needs to what a goroutine is and how to invoke a function as a goroutine.
  • Define what a goroutine is
  • Show how a function can be invoked as a goroutine
  • Demonstrate an example of making the program wait for the goroutine to finish.
Channels The viewer needs to learn what a channel is, and how to use them.
  • Define a channel and introduce the arrow operator
  • Show an example of how to send and receive messages through it
  • Show an example of a buffered channel.
Range Over Channels The viewer needs to know how to range over channels uring Go The video shows how to setup your...

Additional information

No prior knowledge of Golang is required

LEARNING PATH: Go: The Complete Developer's Guide to Golang

£ 40 + VAT