Menu
CoddyTech

Idiom set dalam Go

Termasuk bagian Logika & Alur dalam perjalanan GO di Coddy. Pelajaran 31 dari 68.

Go tidak memiliki struktur data set bawaan seperti banyak bahasa pemrograman lainnya. Namun, para developer Go telah membuat solusi elegan dengan menggunakan maps untuk menyimulasikan set, dan pola ini sudah menjadi sangat umum sehingga dianggap sebagai gaya Go yang idiomatis.

Idiom set di Go menggunakan map yang hanya memperhatikan kunci, bukan nilainya. Karena kamu perlu menyimpan sesuatu sebagai nilai, programmer Go menggunakan struct kosong struct{}. Berikut pola dasarnya:

var mySet map[string]struct{}

Struct kosong struct{} bersifat khusus karena tidak menggunakan byte memori sama sekali. Ini membuatnya sempurna untuk set saat kamu hanya perlu melacak apakah sesuatu ada atau tidak, tanpa membuang memori untuk nilai yang tidak bermakna.

Pendekatan ini memanfaatkan property dasar kunci map: kunci harus unik. Saat kamu menambahkan item ke set, sebenarnya kamu menambahkan kunci ke map. Keunikan dijamin secara otomatis oleh perilaku map, sehingga set memiliki semantik yang sesungguhnya.

Dalam pelajaran berikutnya, kamu akan belajar cara membuat, memanipulasi, dan bekerja dengan set menggunakan pola Go yang idiomatis ini. Teknik ini banyak digunakan dalam basis kode Go untuk melacak item unik, menerapkan algoritma, dan menyelesaikan masalah yang memerlukan pengujian keanggotaan secara cepat.

Coba sendiri

Pelajaran ini tidak memiliki tantangan kode.

quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika & Alur

Latihan sendiri: Compiler Go online