As one of the fastest growing languages in terms of popularity, it is a great time to pick up Go! In GO (Golang) Fundamentals course you will go through all the benefits that Golang has and how you can make use of them. Find out how you can easily build scalable applications using GO’s concurrency model and use the full power of interfaces. But because developing is only one side of the process of building a reliable application, testing will be our other focus this course.
• Developers
• SRE/DevOps
• There are no prerequisites for this course.
• Basic knowledge of other programming or scripting languages.
Module 1: Introduction
– Go features
– Pros and cons
– Comparison with other programming languages
– Reasons why it should be used
Module 2: Installation and environment setup
– Installation on various OS
– Editors and go compiler
– Create first program and test the installation
Module 3: The Basics
– Go tool and commands
– GOPATH environment variable
– Projects structure and documentation
– Workspace (packages, programs, tests)
– Program structure
– Syntax
– Imports
– Exported names
Module 4: Variables. Constants. Operators
– Variables
– Constants
– Operators
– Pointers
Module 5: Basic data types
– Basic types (numbers, strings, booleans)
– Type inference
– Type conversion
– Type aliasing
Module 6: Collection types
– Structures
– Arrays
– Slices
– Ranges
– Maps
Module 7: Control flow
– Decision making (if, switch, select)
– Loops (for)
Module 8: File handling
– Reading files
– Writing files
– Line filters
– File paths
Module 9: Functions and methods
– Multiple return values
– Named return values
– Scope
Module 10: Interfaces and error handling
– Interfaces
– Type assertion
– Error handling
Module 11: Concurrency
– Concurrent programming
– Goroutines
– Channels (buffering, synchronization, directions)
– Errgroup
– Select statement
– Mutual exclusion
– Timers and tickers
Module 12: The core packages
– Strings
– Input / Output
– Files and folders
– Errors
– Containers and sort
– Hashes and cryptography
– Parsing command line arguments
– Synchronization primitives
Module 13: Networking
– Servers and clients
– HTTP
– RPC
Module 14: Automated testing
– Tests types
– Writing tests
– Code coverage
As one of the fastest growing languages in terms of popularity, it is a great time to pick up Go! In GO (Golang) Fundamentals course you will go through all the benefits that Golang has and how you can make use of them. Find out how you can easily build scalable applications using GO’s concurrency model and use the full power of interfaces. But because developing is only one side of the process of building a reliable application, testing will be our other focus this course.
• Developers
• SRE/DevOps
• There are no prerequisites for this course.
• Basic knowledge of other programming or scripting languages.
Module 1: Introduction
– Go features
– Pros and cons
– Comparison with other programming languages
– Reasons why it should be used
Module 2: Installation and environment setup
– Installation on various OS
– Editors and go compiler
– Create first program and test the installation
Module 3: The Basics
– Go tool and commands
– GOPATH environment variable
– Projects structure and documentation
– Workspace (packages, programs, tests)
– Program structure
– Syntax
– Imports
– Exported names
Module 4: Variables. Constants. Operators
– Variables
– Constants
– Operators
– Pointers
Module 5: Basic data types
– Basic types (numbers, strings, booleans)
– Type inference
– Type conversion
– Type aliasing
Module 6: Collection types
– Structures
– Arrays
– Slices
– Ranges
– Maps
Module 7: Control flow
– Decision making (if, switch, select)
– Loops (for)
Module 8: File handling
– Reading files
– Writing files
– Line filters
– File paths
Module 9: Functions and methods
– Multiple return values
– Named return values
– Scope
Module 10: Interfaces and error handling
– Interfaces
– Type assertion
– Error handling
Module 11: Concurrency
– Concurrent programming
– Goroutines
– Channels (buffering, synchronization, directions)
– Errgroup
– Select statement
– Mutual exclusion
– Timers and tickers
Module 12: The core packages
– Strings
– Input / Output
– Files and folders
– Errors
– Containers and sort
– Hashes and cryptography
– Parsing command line arguments
– Synchronization primitives
Module 13: Networking
– Servers and clients
– HTTP
– RPC
Module 14: Automated testing
– Tests types
– Writing tests
– Code coverage
Be the first to hear about our latest courses by signing up to our mailing list.
Contact