# Struktur Data Go (Go) > Arrays, slices, maps, structs, pointers, make vs new, nilai nil - 20 pertanyaan wawancara - Junior - [Pertanyaan Wawancara: Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara.md) ## 1. Apa itu slice di Go? **Jawaban** Slice adalah tampilan dinamis atas array yang mendasarinya yang memungkinkan manipulasi urutan elemen dengan panjang variabel. Berbeda dengan array yang memiliki ukuran tetap yang ditentukan pada saat kompilasi, slice dapat bertambah atau berkurang secara dinamis melalui operasi seperti append. Fleksibilitas ini menjadikannya struktur data sekuensial yang paling umum digunakan di Go untuk menyimpan koleksi elemen yang homogen. ## 2. Apa perbedaan utama antara array dan slice di Go? **Jawaban** Perbedaan mendasar terletak pada ukuran: array memiliki ukuran tetap yang ditentukan pada saat kompilasi dan merupakan bagian dari tipe itu sendiri, sedangkan slice memiliki ukuran dinamis yang dapat berubah saat runtime. Perbedaan ini berarti dua array dengan ukuran berbeda dianggap tipe yang tidak kompatibel, sementara semua slice dengan tipe elemen yang sama saling kompatibel. Oleh karena itu, slice lebih fleksibel dan lebih umum digunakan dalam kode Go modern. ## 3. Bagaimana cara membuat slice kosong di Go? **Jawaban** Sintaks literal dengan tanda kurung siku kosong diikuti tanda kurung kurawal kosong adalah cara idiomatis untuk membuat slice kosong yang terinisialisasi. Pendekatan ini membuat slice dengan panjang 0 tetapi bukan nil, siap menerima elemen melalui append. Berbeda dengan deklarasi sederhana yang akan menghasilkan slice nil, inisialisasi eksplisit ini menjamin slice yang langsung dapat digunakan tanpa risiko perilaku tak terduga saat menambahkan elemen. ## 17 pertanyaan lagi tersedia - Fungsi mana yang harus digunakan untuk menginisialisasi slice dengan kapasitas tertentu? - Apa yang terjadi saat menambahkan elemen ke slice yang kapasitasnya telah tercapai? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara Go lainnya - [Dasar-Dasar Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-basics.md): 25 pertanyaan, Junior - [Interface Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-interfaces.md): 18 pertanyaan, Junior - [Penanganan Error](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/error-handling.md): 20 pertanyaan, Junior - [Dasar-Dasar Goroutine](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/goroutines-basics.md): 20 pertanyaan, Junior - [Channels](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/channels.md): 22 pertanyaan, Junior - [Go Modules](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-modules.md): 18 pertanyaan, Mid-Level - [Server HTTP](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/http-server.md): 24 pertanyaan, Mid-Level - [Klien HTTP](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/http-client.md): 18 pertanyaan, Mid-Level - [Enkoding JSON](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/json-encoding.md): 20 pertanyaan, Mid-Level - [Database/SQL](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/database-sql.md): 22 pertanyaan, Mid-Level - [Paket context](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/context-package.md): 20 pertanyaan, Mid-Level - [Testing](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/testing.md): 22 pertanyaan, Mid-Level - [Pola Concurrency](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/concurrency-patterns.md): 24 pertanyaan, Mid-Level - [Primitif Sinkronisasi](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/sync-primitives.md): 22 pertanyaan, Mid-Level - [Framework web Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-web-frameworks.md): 20 pertanyaan, Mid-Level - [Desain API REST](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/rest-api-design.md): 20 pertanyaan, Mid-Level - [gRPC](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/grpc.md): 22 pertanyaan, Mid-Level - [Reflection](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/reflection.md): 20 pertanyaan, Senior - [Manajemen Memori](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/memory-management.md): 24 pertanyaan, Senior - [Optimasi Performa](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/performance-optimization.md): 22 pertanyaan, Senior - [Generics](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/generics.md): 20 pertanyaan, Senior - [Go Design Patterns](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/design-patterns.md): 24 pertanyaan, Senior - [Microservices](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/microservices.md): 24 pertanyaan, Senior - [Keamanan dan Autentikasi](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/security-authentication.md): 24 pertanyaan, Senior - [Docker & Containerization](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/docker-containerization.md): 20 pertanyaan, Senior - [Kubernetes Basics](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/kubernetes-basics.md): 22 pertanyaan, Senior - [Go Tingkat Lanjut](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/advanced-go.md): 20 pertanyaan, Senior - [Pengembangan CLI](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/cli-development.md): 20 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-data-structures