Objectives

Gain a solid understanding of the popular programming language. Learn how to apply functional, object-based programming and concurrency techniques. Also, gain knowledge of Go-based web servers, Go services, Go microservices etc.

Course Outcome

  • Master Go programming language and it's core fundamentals.
  • Learn in-depth on Go functions, including functional programming.
  • Write highly maintainable and extensible systems with Go's type system.
  • Build production-ready web apps and RESTful APIs in Go.

Why Mazenet?

Expert Faculty

Our Faculty comprises of 300+ SMEs with many years of experience. All our trainers possess a minimum of 8+ years of experience.

Proven Track Record

We have served over 100+ global corporate clients, consistently maintaining a 99% success rate in meeting training objectives for 100+ technologies with quick turn around time.

Blended Learning

We provide course content over any platform that our clients prefer. You can choose an exclusive platform or a combination of ILT, VILT, and DLP.

Learning Paths

The learning paths are very defined with clear benchmarks. Quantitative assessments at regular intervals measure the success of the learning program.

Case Study

We have amassed over 10,000 case studies to support training delivery. Candidates will be trained to work on any real-time business vertical immediately after the training.

24*7 Global Availability

We are equipped to conduct training on any day, date or time. We have delivered training pan India, Singapore, North America, Hong Kong, Egypt and Australia.

Key Features

virtual-led
Customized Training Modules

Training programs are highly flexible with module customizations to suit the requirements of the business units.

virtual-led
Certification

The training can be supplemented with appropriate certifications that are recognized across the industry.

virtual-led
Multi-language Support

Course content can be delivered in English, Spanish, Japanese, Korean or any other language upon request.

virtual-led
Personalized Training Reports

Candidates are assessed individually at regular intervals and are provided unique learning suggestions to suit their learning calibre.

virtual-led
Industry Oriented Training

Industry-oriented training, completing which, candidates can be immediately deployed for billable projects.

virtual-led
Diverse Training Platforms

Choose from Instructor-Led Training, Virtual Instructor-Led Training, Digital Learning Platform and Blended Training platforms

COURSE PREVIEW

Introduction to Go

  • Introduction to Go programming language
  • Setting up Go development environment

Go Language Fundamentals

  • Core language fundamentals
  • Functions
  • Arrays, Slices, and Maps
  • Defer, Panic, and Recover
  • Error handling

Go Package Ecosystem

  • A deep dive into package ecosystem in Go
  • Writing packages
  • Go Tools
  • Using Go standard library packages
  • Using third-party packages

HTML, CSS

  • A deep dive into Go’s type system
  • Introduction to Structs and Interfaces
  • Adding Behaviors to Structs
  • Value Receivers and Pointer Receivers
  • Using composition pattern for building data model for Go apps
  • Using interface for writing idiomatic Go code with Clean architecture

Concurrency Programming

  • Concurrency in Go
  • Goroutines
  • Channels
  • Unbuffered Channels
  • Buffered Channels
  • Channel Select
  • Advanced Concurrency patterns

Go Modules and Project Athens

  • Dependency management in Go
  • Introduction to Go Modules
  • Athens: A Go module datastore and proxy

Mutexes

  • Preventing data race conditions with Mutexes

HTTP Programming & RESTful APIs

  • A deep dive into Go’s http package
  • ServeMux and Handler
  • Creating custom handlers
  • Extending Go’s http package by using third-party packages
  • Routing using Gorilla Mux
  • Writing HTTP middleware
  • Building real-world RESTful APIs
  • Securing APIs using JWT

Testing Go Applications

  • Writing unit tests
  • Writing Benchmark tests
  • Testing HTTP applications
  • Test-Driven Development (TDD) and Behavior-Driven Development (BDD)
  • Writing BDD-styled testing
  • A deep dive into Ginkgo BDD test framework
  • Mocking Go interfaces
  • Mocking with GoMock - A mock framework for Go
  • Integrating GoMock with Ginkgo BDD test framework

Testing Go Applications

  • Writing unit tests
  • Writing Benchmark tests
  • Testing HTTP applications
  • Test-Driven Development (TDD) and Behavior-Driven Development (BDD)
  • Writing BDD-styled testing
  • A deep dive into Ginkgo BDD test framework
  • Mocking Go interfaces
  • Mocking with GoMock - A mock framework for Go
  • Integrating GoMock with Ginkgo BDD test framework

Containerise Go applications with Docker

  • Introduction to containerisation and Docker
  • Write Dockerfile for Go applications
  • Run applications with Docker container

 

Mazenet's Clients

Copyright © 2022 Mazenet