Tutorial / Belajar Dasar Pemrograman GoLang



# Kenapa Go Lang?
  • Cepat (Hasil akhir dari Go adalah sebuah file binary yang bisa dieksekusi langsung oleh komputer tanpa memerlukan ketergantungan terhadap aplikasi yang lain)
  • Cukup mudah dipelajari (katanya)
  • Sedang banyak dibutuhkan perusahaan (Demanding & Trending)
# Input - Output

Contoh Kode Output / Menampilkan data :
package main

import (
"fmt"
)

func main() {
fmt.Println("Hello, playground")
}

# Tipe Data & Variabel


Beberapa (Sebagian) contoh tipe data :
  • boolean = tipe data hanya memiliki nilai true atau false
  • int = tipe data numerik (tidak bisa desimal)
  • float / complex = tipe data numerik desimal
  • string = tipe data untuk text
Cara penulisan tipe data, variable & value
Merah = tipe data / data type
Hijau = variable / variabel / property
Biru = nilai / isi / value

/* Maaf kalo banyak garis miring "/", karena istilah komputer / programming memang memiliki banyak sinonim / istilah lain / istilah sejenis */

var tembak boolean = true
var nonDecimalNumber int = 100
var decimalNumber complex64 = 3.14
var kalimat string "ini adalah kalimat"

Cara penulisan lain
tembak := true // otomatis menjadi boolean
nonDecimalNumber := 100 // otomatis menjadi int
decimalNumber := 3.14 // otomatis menjadi float / complex
kalimat := "ini adalah kalimat" // otomatis menjadi string

Contoh Kode Tipe Data & Variable :
package main

import (
"fmt"
)

func main() {
tembak := true
nonDecimalNumber := 100
decimalNumber := 3.14
kalimat := "ini adalah kalimat"
fmt.Println(tembak)
fmt.Println(nonDecimalNumber)
fmt.Println(decimalNumber)
fmt.Println(kalimat)
}

# Operator Aritmatika
  • simbol atau tanda + artinya penjumlahan
  • simbol atau tanda - artinya pengurangan
  • simbol atau tanda * artinya perkalian
  • simbol atau tanda / artinya pembagian
  • simbol atau tanda % artinya sisa bagi
Contoh Kode Penjumlahan :
package main

import (
"fmt"
"strconv"
)

func main() {
jariKanan := 5
jariKiri := 5
jumlahJari := jariKanan + jariKiri
fmt.Println("Jari saya ada " + strconv.Itoa(jumlahJari))
}

Contoh Kode Pengurangan :
package main

import (
"fmt"
"strconv"
)

func main() {
gajiKotor := 5000000
pajak := 1000000
gajiBersih := gajiKotor - pajak
fmt.Println("Gaji bersih saya " + strconv.Itoa(gajiBersih))
}

# Operator Pembanding
  • simbol atau tanda == artinya sama dengan
  • simbol atau tanda != artinya tidak sama dengan
  • simbol atau tanda > artinya lebih dari
  • simbol atau tanda < artinya kurang dari
  • simbol atau tanda >= artinya lebih dari sama dengan
  • simbol atau tanda <= artinya kurang dari sama dengan
/* Conto penggunaan-nya di bagian Percabangan / Pemilihan ya */

# Percabangan / Pemilihan
  • IF - ELSE
  • SWITCH - CASE
Contoh Kode menggunakan IF - ELSE
package main

import (
"fmt"
)

func main() {
// Coba ganti jadi 10000000
gaji := 5000000
        if gaji >= 10000000{
            fmt.Println("Sangat Bersyukur")
        } else {
            fmt.Println("Harus Bersyukur")
        }
}

Contoh lain menggunakan IF - ELSE
package main

import (
"fmt"
)

func main() {
// Coba ganti jadi 10000000
gaji := 5000000
if gaji == 10000000 {
            fmt.Println("Bersyukur")
        } else if gaji > 10000000 {
            fmt.Println("Lebih Bersyukur")
        } else if gaji < 10000000 {
            fmt.Println("Tetap Bersyukur")
        }
}

Contoh Kode menggunakan SWITCH - CASE
package main

import (
"fmt"
)

func main() {
// Coba ganti jadi 2 - 3 - 4 - 5
angka := 1
        switch (angka) {
            case 1:
              fmt.Println("Aku sayang ibu")
            case 2:
              fmt.Println("Aku sayang Ayah")
            case 3:
              fmt.Println("Sayang Adik Kaka")
            default:
              fmt.Println("Sayang semuanya")
        }
}

# Operator Logika
  • simbol atau tanda && artinya DAN / AND
  • simbol atau tanda || artinya ATAU / OR
Contoh Kode && / AND / DAN
package main

import (
"fmt"
)

func main() {
// Coba ganti ke Rendah
citaCita := "Tinggi" 
// Coba ganti ke Malas
        sikap := "Rajin"
        if citaCita == "Tinggi" && sikap == "Rajin" {
            fmt.Println("Kamu akan sukses")
        } else {
            fmt.Println("Kamu akan gagal")
        }
}

Contoh Kode || / OR / ATAU
package main

import (
"fmt"
)

func main() {
// Coba ganti ke Hujan - Cerah
cuaca := "Mendung"
        if cuaca == "Mendung" || cuaca == "Hujan" {
            fmt.Println("Diam aja di rumah")
        } else {
            fmt.Println("Pergi ke mall")
        }
}

# Loop / Perulangan
Salah satu manfaat dari perulangan adalah untuk meringkas kode yang kita buat.
Studi kasus : buatlah program untuk menampilkan angka 1 sampai dengan 3.
Maka kita akan menulis kode seperti ini :
package main

import (
"fmt"
)

func main() {
fmt.Println("Angka 1")
        fmt.Println("Angka 2")
        fmt.Println("Angka 3")
}
Kode di atas terdiri dari 3 baris. Bayangkan jika angka yang akan di tampilkan sebanyak 100, apakah kita akan mengetik sebanyak 100 baris kode yang sama? Males banget kan..
Maka dari itu kita perlu menggunakan loop atau pengulangan.

Contoh Kode Pengulangan FOR
package main

import (
"fmt"
"strconv"
)

func main() {
for i := 1; i <= 100; i++ {
    fmt.Println("Angka " + strconv.Itoa(i))
}
}

# Array & List

Perbedaan : 
  • Array ukurannya statis & tidak bisa dirubah
  • List ukurannya dinamis bisa bertambah & berkurang
Contoh Array
package main

import (
"fmt"
)

func main() {
array := make([]string, 3)
array[0] = "Halo"
    array[1] = "Apa"
    array[2] = "Kabs"
fmt.Println(array[0])
fmt.Println(array[1])
fmt.Println(array[2])
}

Contoh Kode List
package main

import (
"fmt"
"container/list"
)

func main() {
linkedList := list.New()
linkedList.PushBack("Halo")
linkedList.PushBack("Apa")
linkedList.PushBack("Kabs")
temp := linkedList.Front()
fmt.Println(temp.Value)
temp = temp.Next()
fmt.Println(temp.Value)
temp = temp.Next()
fmt.Println(temp.Value)
}

Kontak Penulis :



0 comments:

Posting Komentar