Book Description
This book is designed to introduce you to writing programs with the Go programming language. You'll learn how to write useful tools and applications that can run on remote servers, or local Windows, macOS, and Linux systems for development.
The topics that it covers include how to:
- Install and set up a local Go development environment on Windows, macOS, and Linux systems;
- Design your programs with conditional logic, including switch statements to control program flow;
- Define your own data structures and create interfaces to them for reusable code;
- Write custom error handling functions;
- Building and installing your Go programs so that they can run on different operating systems and different CPU architectures;
- Using flags to pass arguments to your programs, to override default options.
Each chapter can be read on its own or used as a reference, or you can follow the chapters from beginning to end. Feel free to jump to the chapter or chapters that best suits your purpose as you are learning Go with this book.
This open book is licensed under a Creative Commons License (CC BY-NC-SA). You can download How To Code in Go ebook for free in PDF format (3.1 MB).
Table of Contents
How To Install Go and Set Up a Local Programming Environment on Ubuntu 18.04
How To Install Go and Set Up a Local Programming Environment on macOS
How To Install Go and Set Up a Local Programming Environment on Windows 10
How To Write Your First Program in Go
Understanding the GOPATH
How To Write Comments in Go
Understanding Data Types in Go
An Introduction to Working with Strings in Go
How To Format Strings in Go
An Introduction to the Strings Package in Go
How To Use Variables and Constants in Go
How To Convert Data Types in Go
How To Do Math in Go with Operators
Understanding Boolean Logic in Go
Understanding Maps in Go
Understanding Arrays and Slices in Go
Handling Errors in Go
Creating Custom Errors in Go
Handling Panics in Go
Importing Packages in Go
How To Write Packages in Go
Understanding Package Visibility in Go
How To Write Conditional Statements in Go
How To Write Switch Statements in Go
How To Construct For Loops in Go
Using Break and Continue Statements When Working with Loops in Go
How To Define and Call Functions in Go
How To Use Variadic Functions in Go
Understanding defer in Go
Understanding init in Go
Customizing Go Binaries with Build Tags
Understanding Pointers in Go
Defining Structs in Go
Defining Methods in Go
How To Build and Install Go Programs
How To Use Struct Tags in Go
How To Use Interfaces in Go
Building Go Applications for Different Operating Systems and Architectures
Using ldflags to Set Version Information for Go Applications
How To Use the Flag Package in Go