go4noobs icon indicating copy to clipboard operation
go4noobs copied to clipboard

My progress studying Golang

trafficstars

Go

Go4Noobs
Art by @Lora
  • Disclaimer!!
  • __ 👨‍💻 👩‍💻 In development 🚧 🛠 __
  • This repo must and will suffer some major updates and modifications along with my learning curve
  • Feel totally free to fork and PR this repo
  • Enjoy!

Thank You

Summary

  1. >>Introduction<<
  2. Variables and Types 01. Hello World 02. Println() 03. Gopher 04. Scope 05. Types 06. Custom Type 07. Type Conversion 08. Exercises
  3. Programming Foundations I 01. Boolean 02. String 03. Constants 04. Iota 05. Part 1 - Exercises 06. Procedural Programming 07. Loop For 08. Conditional 09. Logical Operator
  4. Data Structures I 01. Array 02. Slices 03. Slice of Slices 04. Slice Make 05. Maps 06. Exercises 07. Structs
  5. Programming Foundations II
    1. Simple Function
    2. Variadic Functions
    3. Multiple Return
    4. Defer Statement
    5. Methods
    6. Interfaces
    7. Literal Functions
    8. Function as Expression
    9. Return Function
    10. Callbacks
    11. Closure
    12. Recursive
    13. Pointer
  6. Data Structures II
    1. Struct Tags
    2. Channels
  7. Concurrency
    1. Go Routines
    2. Channels
    3. Channel of Channel
    4. Parallelization
    5. Leaky Buffer
  8. Packages
    1. JSON
    2. Go Template
  9. Projects
    1. Go Request Validator
    2. Go Twitch Bot

Installing GO in Ubuntu

  • Download package from the Official Download Page
    • In my case the filename is "go1.15.2.linux-amd64.tar.gz"
  • Open your terminal, and follow these steps
  • $ mkdir ~/go

  • $ sudo mv ~/Downloads/go1.15.2.linux-amd64.tar.gz ~/go

  • $ cd ~/go

  • $ sudo tar -C /usr/local -xzf go1.15.2.linux-amd64.tar.gz

  • Copy these:
    •     export GOPATH=$HOME/go
          export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
      
  • Profile installation
    • Paste Here
      • $ sudo nano ~/.profile

      • $ /bin/bash -c ‘source ~/.profile'

  • System-wide installation
    • $ sudo nano /etc/profile

    • $ /bin/bash -c ‘source /etc/profile’

  • Re-open your terminal
  • Test with:
    • $ go version