https://github.com/kudoabhijeet/letsgo
Go is an open-source programming language designed for building simple, fast, and reliable software. This repository contains the basics of Go.
https://github.com/kudoabhijeet/letsgo
go golang google gopher letsgo
Last synced: 8 months ago
JSON representation
Go is an open-source programming language designed for building simple, fast, and reliable software. This repository contains the basics of Go.
- Host: GitHub
- URL: https://github.com/kudoabhijeet/letsgo
- Owner: kudoabhijeet
- License: gpl-3.0
- Created: 2020-02-02T17:15:48.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2020-07-28T06:53:16.000Z (over 5 years ago)
- Last Synced: 2024-04-16T00:56:32.189Z (over 1 year ago)
- Topics: go, golang, google, gopher, letsgo
- Language: Go
- Homepage:
- Size: 86.9 KB
- Stars: 7
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# LetsGO!
GO Programming Language!
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.
## Contents
### Week 1:
1. #### Why 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
2. #### GO vs. other High Level Languages.
3. #### Advantages of GO!
- [x] 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. )
- [x] Garbage Collection
- Automatic memory management.
- Gives a ton of control over memory allocation.
- Reduces latency to 1ms. Uses algorithm of Tricolor Mark & Sweep.
- [x] Simplicity
- Very small language specs.
- [Tutorials and Docs](https://tour.golang.org/welcome/1)
- [x] Scalability
- Need of the hour with growing Applications.
- Features such as Concurrency, Goroutines, Channels help in improving Scalability.
4. #### Setting up Develepment Environment.
- [x] Download [Go Installer](https://golang.org/dl/)
- [x] Verify GOPATH
### Week 2:
- [x] Writing our first GoLang Program, i.e "Hello World".
- [x] Variables
- [x] Variables Initialization
- [x] Pointers
- [x] Variable Scope
- [x] Deallocating Memory
- [x] Garbage Collection
- [x] Comments, Printing
- [x] Data Types : int, float, strings
- [x] String Packages
- [x] Control Flow, Scan()
- [x] Assignment
### Week 3 :
- [x] Arrays
- [x] Slices
- [x] Hashtables
- [x] Maps
- [x] Structs
- [x] Assignment
### Week 4 :
- [x] RFC
- [x] JSON
- [x] File Access - IOUtil
- [x] File Access - OS