Go - Tipe Data: Panduan Ramah untuk Pemula

Hai teman pecinta programming! Apakah Anda siap untuk memantulkan dunia menakjubkan pemrograman Go? Hari ini, kita akan mengexplore salah satu konsep fundamental di Go: tipe data. Jangan khawatir jika Anda belum pernah menulis baris kode sebelumnya - saya akan memandu Anda langkah demi langkah, seperti yang saya lakukan untuk ribuan murid selama tahun-tahun mengajar. Ayo mulai!

Go - Data Types

Apa Itu Tipe Data?

Sebelum kita masuk ke detilnya, mari kita pahami apa itu tipe data. Bayangkan Anda sedang mengatur sebuah pesta besar (menyenangkan, kan?). Anda perlu mencatat berbagai jenis informasi:

  • Jumlah tamu (angka bulat)
  • Biaya makan per orang (angka dengan desimal)
  • Apakah itu pesta kejutan atau tidak (ya atau tidak)
  • Nama tamu kehormatan (sejumlah huruf)

Dalam pemrograman, kita menggunakan tipe data yang berbeda untuk mewakili jenis informasi yang berbeda ini. Go, sebagai bahasa yang berhati-hati, menyediakan beberapa tipe data untuk kita kerjakan.

Tipe Integer

Ayo mulai dengan tipe integer. Ini digunakan untuk angka bulat, seperti jumlah tamu di pesta kita.

Tipe Integer Dasar

Go menawarkan beberapa tipe integer, berbeda dalam ukuran dan apakah mereka dapat mewakili angka negatif:

Tipe Ukuran (bit) Rentang
int8 8 -128 hingga 127
int16 16 -32,768 hingga 32,767
int32 32 -2,147,483,648 hingga 2,147,483,647
int64 64 -9,223,372,036,854,775,808 hingga 9,223,372,036,854,775,807
uint8 8 0 hingga 255
uint16 16 0 hingga 65,535
uint32 32 0 hingga 4,294,967,295
uint64 64 0 hingga 18,446,744,073,709,551,615

Lihat bagaimana kita dapat menggunakan ini dalam kode kita:

package main

import "fmt"

func main() {
var partyGuests int = 50
var smallPartyGuests int8 = 10
var hugePartyGuests uint64 = 1000000

fmt.Println("Tamu pesta biasa:", partyGuests)
fmt.Println("Tamu pesta kecil:", smallPartyGuests)
fmt.Println("Tamu pesta besar:", hugePartyGuests)
}

Dalam contoh ini, kita mendeklarasikan variabel untuk menyimpan jumlah tamu untuk jenis pesta yang berbeda. Tipe int digunakan untuk pesta biasa, int8 untuk gathering kecil (karena kita tahu itu tidak akan melebihi 127), dan uint64 untuk perayaan besar (just in case kita merencanakan acara kota-wide!).

Tipe 'int' dan 'uint'

Go juga menyediakan tipe int dan uint, yang setidaknya 32 bit dalam ukuran tapi bisa lebih besar tergantung pada sistem. Mereka seringkali pilihan yang paling nyaman ketika Anda tidak memerlukan ukuran tertentu.

var flexibleNumber int = 42
var positiveFlexibleNumber uint = 42

Di sini, flexibleNumber bisa positif atau negatif, sedangkan positiveFlexibleNumber selalu non-negatif.

Tipe Floating

Sekarang, mari bicarakan tentang bilangan floating-point. Ini digunakan untuk bilangan dengan titik desimal, seperti biaya per orang untuk makanan pesta kita.

Go menyediakan dua tipe floating-point:

Tipe Ukuran (bit) Presisi
float32 32 Kira-kira 7 digit desimal
float64 64 Kira-kira 15 digit desimal

Lihat bagaimana mereka berkerja:

package main

import "fmt"

func main() {
var costPerPerson float32 = 15.50
var totalBudget float64 = 1000.75

fmt.Printf("Biaya per orang: $%.2f\n", costPerPerson)
fmt.Printf("Total anggaran: $%.2f\n", totalBudget)
}

Dalam contoh ini, kita menggunakan float32 untuk biaya per orang (karena kita tidak memerlukan presisi ekstrim) dan float64 untuk total anggaran (di mana kita mungkin memerlukan lebih banyak tempat desimal untuk perhitungan akurat).

Simbol %.2f dalam Printf mengatakan ke Go untuk menampilkan float dengan dua tempat desimal.

Tipe Numerik Lain

Go menyediakan beberapa tipe numerik lain yang berguna dalam situasi tertentu.

Bilangan Kompleks

Ya, Go bisa menangani bilangan kompleks! Itu menawarkan dua tipe:

Tipe Deskripsi
complex64 Bilangan kompleks dengan float32 real dan bagian imajiner
complex128 Bilangan kompleks dengan float64 real dan bagian imajiner

Ini adalah contoh yang cepat:

package main

import "fmt"

func main() {
var c64 complex64 = 1 + 2i
var c128 complex128 = 3 + 4i

fmt.Println("Complex64:", c64)
fmt.Println("Complex128:", c128)
}

Meskipun Anda mungkin jarang menggunakan bilangan kompleks, itu bagus untuk mengetahui Go mendukung mereka jika Anda pernah membutuhkannya!

Byte dan Rune

Go juga memiliki dua alias untuk tipe integer yang digunakan dalam konteks tertentu:

Tipe Alias untuk Penggunaan Umum
byte uint8 Mewakili 1 byte data
rune int32 Mewakili 1 kode poin Unicode

Ini adalah cara Anda mungkin menggunakannya:

package main

import "fmt"

func main() {
var b byte = 65
var r rune = 'A'

fmt.Printf("Byte %d merepresentasikan: %c\n", b, b)
fmt.Printf("Rune %d merepresentasikan: %c\n", r, r)
}

Dalam contoh ini, b dan r keduanya merepresentasikan huruf 'A', tetapi dalam cara yang berbeda. Byte menggunakan nilai ASCII, sedangkan rune menggunakan kode poin Unicode.

Menutup

Wah! Kita telah meliputi banyak hal hari ini. Dari integer ke float, dan bahkan bilangan kompleks, Go menyediakan set data yang kaya untuk kerjakan. Ingat, memilih tipe data yang tepat seperti memilih alat yang tepat untuk pekerjaan - itu bisa membuat kode Anda lebih efisien dan mencegah kesalahan.

Sekarang Anda teruskan perjalanan Go Anda, Anda akan merasa nyaman dengan tipe ini dan belajar kapan untuk menggunakannya. Jangan khawatir jika itu terasa mengelilingkan pada awalnya - itu sangat normal! Seperti belajar menunggang sepeda, itu memerlukan latihan, tapi sebelum Anda mengetahui, Anda akan terus menerus melalui kode Go seperti seorang ahli.

Terus coding, terus belajar, dan terutama, bersenang-senang! Setelah semuanya, pemrograman agak mirip dengan merencanakan pesta sempurna - itu tentang mencampurkan unsur yang tepat untuk menciptakan sesuatu yang menakjubkan. Selamat coding!

Credits: Image by storyset