GOLANG : Belajar Syntax Dasar (PEMULA)






Assalamu'alaikum Wr. Wb
Pada kali ini saya ingin belajar tentang Go..
Mengapa Go?
Sekarang banyak perusahaan startup yang menggunakan bahasa pemrograman ini.
Jadi saya ingin belajar supaya ngga ketinggalan update.
Saya belajar dengan menggunakan PDF gratis yang ada di internet.
Dan saya akan merangkum di blog,, supaya gampang klo buka-buka lagi.
Jika dilihat bahasa pemrograman Go hampir mirip syntax-nya dengan C++, meskipun saya bukan programmer C++ tp setidaknya saya pernah lihat waktu dikuliah. Hehe..

Golang merupakan bahasa pemrograman dengan fitur tambahan CSP-style concurrent programming.
Concurrent Programming adalah beberapa proses komputasi yang dieksekusi selama periode waktu yang tumbang tindih.
Golang merupakan bahasa pemrograman yang statically typed,  Structural Type System, memory safety, dan dengan garbage collection.

Sumber Definisi Golang : Wikipedia

Apa itu statically typed ?
Statically Typed adalah proses verifikasi type safety (prevent type error) dari program. Sebagai contoh misal ketika ada variable yang tidak dipakai maka akan muncul error.

Apa itu Structural Type System?

Sumber : Medium
Sebagai contoh dari gambar di atas bisa disimpulkan jika kita membuat 2 fungsi dengan nama class, dan nama method yang berbeda maka, dan diset pada sebuah variable dengan inisialisasi yang berbeda, maka akan error. Tetapi jika, Structural Type System, itu tidak akan error dikarenakan return dari 2 method dalam masing-masing class diatas memeliki return type data yang sama.

format syntax yang ada di golang adalah sebagai berikut :

package <nama_package> 
import <package> 
// your code below

Untuk format penggunaan syntax dalam bahasa pemrograman Golang dasar, dapat dilihat dibawah ini :

format import
=======================
import "<package>"
import (
"<package1>"
"<package2>"
)

format deklarasi variable
=======================
var <variable_name> type = <value>
short version :
<variable_name> := <value>
ex :
var tmp int
tmp := 3.5 // hanya digunakan untuk inisialisasi variable
name, hitpoint := "Balanar", 9000


format function
=====================
func <funcName> <returnType> {}
ex :
func getPower() int { // do something ... }
func isValid(name String) (int, bool){ // do something ... }
------------
lengthVal, isValid := isValid("Rudi")
_, isValid := isvalid("Rudi") // jika yang dibutuhkan hanya variable isValid


format structures
=====================
Karena Go bukan OO
maka menggunakan struct

type Saiyan struct {
Name string
Power int
}

penggunaan pointer atau tidak dalam parameter
penggunaan pointer akan mengubah data yang ada pada alamat aslinya
sedangkan jika tidak misal dalam parameter dia dipassing maka akan dianggap
sebagai copy value saja

Berikut contoh penggunaan pointer pada struct Golang di parameter :

Berikut contoh penggunaan struct parameter tanpa pointer di Golang :

Penggunaan Constructor pada Struct
==================================

Dikarenakan Golang bukanlah OOP, maka untuk constructor kita membutuhkan function untuk create instance dari struct tersebut.

Dari yang saya pelajari di atas, saya ingin latihan membuat object, dan penggunaan pointer vs value.


Untuk lebih jelasnya tentang latihan saya, saya sertakan link GitHub

Sekian catatan dari saya.
Terima kasih sudah mampir~
Wassalamu'alaikum Wr. Wb.






Unknown

Nama saya Dhanar J Kusuma, hobby saya ngegame, nonton anime, dan dengerin musik

No comments:

Post a Comment