This readme file is a documentation of my journey learning GO language. I will be documenting my progress and the resources I used to learn GO language. I will also be documenting the projects I will be working on as I learn GO language.
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. Go is a statically typed, compiled programming language designed at Google.
Go is a general-purpose language designed with systems programming in mind. It is strongly typed and garbage-collected and has explicit support for concurrent programming. Programs are constructed from packages, whose properties allow efficient management of dependencies. The existing implementations use a traditional compile/link model to generate executable binaries. Also it is widely used in the cloud technologies. Go is sepcifically designed for the concurrent programming. It is also very fast and efficient.
- Note: Go is not an object oriented programming language. It is a procedural programming language. *
- Go is a statically typed language. It means that the type of a variable is known at compile time.
- Go is a compiled language. It means that the code written in Go needs to be compiled before it can be run.
- Go is a procedural programming language. It means that the code is written in a procedural way. It is not an object oriented programming language.
- Go is a concurrent programming language. It means that it supports the concept of concurrency. It is very easy to write concurrent programs in Go.
- Go is a garbage collected language. It means that the memory management is done automatically by the Go runtime.
The best way to learn Go lang is to go through the A Tour of Go tutorial. It is a very interactive tutorial that will help you learn the basics of Go lang. It is a very good tutorial for beginners.
- Go lang Documentation
- Go lang Tutorial
- Go lang Effective Go
- Let's Go with Golang by Hitesh Choudhary
NEXT: Setting Up Setting Up Your Go Environment and Hello World Program
- You are welcome to contribute to this repository. You can contribute by adding more resources to this repository.