Skip to Content

Introduction

The Go Programming Language Specification 

Go’s declaration Syntax 

Standard lib

documentation 

Go Docs

godoc.org 

Effective Go guide 

Composition over inheritance

short but good segment 

Go by Example: Interfaces 

Slice

Map

Concurrent Slogon

Do not communicate by sharing memory; instead, share memory by communicating.

Although Go’s approach to concurrency originates in Hoare’s Communicating Sequential Processes (CSP)  ,it can also be seen as a type-safe generalization of Unix pipes.

Concurrency

Channels

  • Buffered Channel
  • Unbuffered Channel

Goroutines

Goroutines run in the same address space, so access to shared memory must be synchronized​​. The sync package provides useful primitives, although you won’t need them much in Go as there are other primitives.

How are Go channels implemented? 

Reference

Last updated on