Getting Started with GO!
GO Documentation »
This repository will keep track of my GO learning experience. The entire phase is divided into 4 Weeks. It will include my personal notes as well as Documentation snippets provided by the GO Community. Follow along of you want to get started with Go.
- Fast-paving compilation and execution
- Do away with the need of working with different subsets of languages for one project.
- A boost to code readability and documentation
- Offering a thoroughly consistent language
- Facilitating easy versioning of the program
- Allowing developing with multiple languages
- Allowing easier maintenance of dependencies
- Concurrency Support
- Management of multiple tasks at the same time.
- Solves the problems in Parallelism (i.e : Conflict in Memory, Dependent tasks, When do tasks start and stop etc. )
- Garbage Collection
- Automatic memory management.
- Gives a ton of control over memory allocation.
- Reduces latency to 1ms. Uses algorithm of Tricolor Mark & Sweep.
- Simplicity
- Very small language specs.
- Tutorials and Docs
- Scalability
- Need of the hour with growing Applications.
- Features such as Concurrency, Goroutines, Channels help in improving Scalability.
- Download Go Installer
- Verify GOPATH
- Writing our first GoLang Program, i.e "Hello World".
- Variables
- Variables Initialization
- Pointers
- Variable Scope
- Deallocating Memory
- Garbage Collection
- Comments, Printing
- Data Types : int, float, strings
- String Packages
- Control Flow, Scan()
- Assignment
- Arrays
- Slices
- Hashtables
- Maps
- Structs
- Assignment
- RFC
- JSON
- File Access - IOUtil
- File Access - OS