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 that feels like a dynamically typed, interpreted language
  • 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++

Go

Python

C++

Statically typed

Dynamically typed

Statically typed

Fast run time

Slow run time

Fast run time

Compiled

Interpreted

Compiled

Fast compile time

Interpreted

Slow compile time

Supports concurrency through goroutines and channel

No built-in concurrency mechanism

Supports concurrency through threads

Has automatic garbage collection

Has automatic garbage collection

Does not have automatic garbage collection

Does not support classes and objects

Has classes and objects

Has classes and objects

Does not support inheritance

Supports inheritance

Supports 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


Get Started

This tutorial will teach you the basics of Go.

It is not necessary to have any prior programming experience.

 

Go Introduction

Login
ADS CODE