Go Fundamentals
If your job brings you into contact with the cloud, then you are probably interacting with Go. This course will teach you all you need to create your own Go programs, including an introduction to Go’s concurrency mechanisms.
What you'll learn
Go has become the first language many companies reach when they need fast, scalable, and maintainable software for cloud-based platforms. In this course, Go Fundamentals, you’ll learn the fundamentals of Go software development. First, you’ll explore the core language, such as the use of variables and control flow. Next, you’ll discover how to organize Go programs to maximize their clarity and maintainability. Finally, you’ll learn how to optimize application performance using Go’s elegant concurrency mechanism. When you’re finished with this course, you’ll have the skills and knowledge of Go needed to write straightforward and performant applications.
Table of contents
- Introduction 1m
- Simple Data Types 1m
- The String Type 3m
- Numeric Types 2m
- Boolean Types 1m
- Error Types 2m
- Finding Documentation for Built-in Types 2m
- Declaring Variables 3m
- Type Conversions 2m
- Demo: Using Simple Types and Type Conversions 6m
- Common Arithmetic Operators 2m
- Common Comparison Operators 2m
- Demo: Using Arithmetic and Comparison Operators 4m
- Constants, Constant Expressions, and Iota 6m
- Demo: Constants, Constant Expressions, and Iota 6m
- Pointers 6m
- Demo: Creating and Using Pointers 3m
- Summary 2m
- Introduction 2m
- If Statements 3m
- Demo: If Statements 5m
- Concept: Switch Statements 2m
- Switch Statements 2m
- Logical Switches 2m
- Demo: Switch Statements 9m
- Concept: Deferred Functions 1m
- Deferred Functions 2m
- Demo: Deferred Functions 4m
- Concept: Panic and Recover 4m
- Panic and Recover 3m
- Demo: Panic and Recover 5m
- Goto Statements 3m
- Summary 3m
- Introduction 1m
- Function Signatures 2m
- Function Parameters 3m
- Passing Values and Pointers as Parameters 4m
- Returning Data from Functions 6m
- Demo: Functions 5m
- Concept: Packages 2m
- Package Members and Scoping Rules 4m
- Demo: Packages 8m
- Documenting Code 5m
- Examples of Documentation in Standard Library 3m
- Summary 2m
- Introduction 1m
- Defining Methods 5m
- Method Receivers 2m
- Demo: Methods 6m
- Concept: Interfaces 3m
- Defining and Implementing Interfaces 4m
- Type Assertions 5m
- Demo: Interfaces 10m
- Concept: Generic Programming 3m
- Demo: Creating Generic Functions 4m
- Demo: Generics with the Comparable Constraint 4m
- Demo: Creating Custom Type Constraints 6m
- Review: Generic Programming 3m
- Summary 2m
- Introduction 1m
- Concept: Concurrency 2m
- Concept: CSP (Communicating Sequential Processes) 4m
- Concept: Goroutines 2m
- WaitGroups 4m
- Demo: Goroutines and WaitGroups 4m
- Channels 4m
- Demo: Channels 3m
- Select Statements 3m
- Demo: Select Statements 5m
- Looping with Channels 3m
- Demo: Looping with Channels 3m
- Summary 2m