bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/Go/Go Tutorial
Go•Go Tutorial

Go Introduction

Flash cards

Review the key moves

1/3
Core idea

What is the main idea behind Go Introduction?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Order

Put the learning moves in the order that makes the concept easiest to apply.

- Web development (server-side) - Developing network-based programs - Developing cross-platform enterprise applications - Cloud-native development
- Go is a cross-platform, open source programming language Go can be used to create high-performance applications Go is a fast, statically typed, compiled language known for its simplicity and efficiency Go was developed at Google by Robert Griesemer, Rob Pike, and Ken Thompson in 2007 Go's syntax is similar to C++
Go Compared to Python and C++

What is Go?

  • Go is a cross-platform, open source programming language Go can be used to create high-performance applications Go is a fast, statically typed, compiled language known for its simplicity and efficiency Go was developed at Google by Robert Griesemer, Rob Pike, and Ken Thompson in 2007 Go's syntax is similar to C++

What is Go Used For?

  • Web development (server-side)
  • Developing network-based programs
  • Developing cross-platform enterprise applications
  • Cloud-native development

Why Use Go?

  • Go is fun and easy to learn
  • Go has fast run time and compilation time
  • Go supports concurrency
  • Go has memory management
  • Go works on different platforms (Windows, Mac, Linux, Raspberry Pi, etc.)

Go Compared to Python and C++

GoPythonC++
Statically typedDynamically typedStatically typed
Fast run timeSlow run timeFast run time
CompiledInterpretedCompiled
Fast compile timeInterpretedSlow compile time
Supports concurrency through goroutines and channelNo built-in concurrency mechanismSupports concurrency through threads
Has automatic garbage collectionHas automatic garbage collectionDoes not have automatic garbage collection
Does not support classes and objectsHas classes and objectsHas classes and objects
Does not support inheritanceSupports inheritanceSupports inheritance

Notes: Compilation time refers to translating the code into an executable program Concurrency is performing multiple things out-of-order, or at the same time, without affecting the final outcome Statically typed means that the variable types are known at compile time

  • Compilation time refers to translating the code into an executable program
  • Concurrency is performing multiple things out-of-order, or at the same time, without affecting the final outcome
  • Statically typed means that the variable types are known at compile time

This tutorial will teach you the basics of Go.

It is not necessary to have any prior programming experience.

Previous

Go Tutorial

Next

Go Getting Started