Go

Go Design Patterns

Singleton, Factory, Builder, Strategy, Decorator, Adapter, functional options, SOLID

24 pertanyaan wawancaraยท
Senior
1

Apa keuntungan utama dari pattern Functional Options di Go?

Jawaban

Pattern Functional Options memungkinkan pembuatan API yang dapat dikonfigurasi dengan parameter opsional tanpa melakukan overloading pada constructor. Pattern ini menghindari banyak constructor dengan signature berbeda dan menyediakan API yang extensible serta mudah dibaca. Pattern ini idiomatic di Go karena memanfaatkan first-class function dan menghindari nilai default yang ambigu.

2

Pendekatan apa yang direkomendasikan untuk mengimplementasikan pattern Singleton di Go?

Jawaban

Di Go, pattern Singleton idealnya diimplementasikan dengan sync.Once yang menjamin inisialisasi thread-safe dan lazy initialization. Pendekatan ini menghindari mutex manual dan double-checked locking yang rawan kesalahan. sync.Once memastikan bahwa sebuah fungsi dieksekusi hanya sekali bahkan dengan banyak goroutine yang berjalan bersamaan.

3

Prinsip SOLID mana yang mendorong penggunaan interface di Go?

Jawaban

Prinsip Dependency Inversion menyatakan bahwa modul tingkat tinggi tidak boleh bergantung pada modul tingkat rendah, melainkan pada abstraksi (interface). Di Go, ini berarti menerima interface dan mengembalikan tipe konkret. Prinsip ini memudahkan pengujian (mocking), decoupling, dan maintainability kode.

4

Bagaimana cara mengimplementasikan pattern Factory di Go secara idiomatic?

5

Apa peran utama dari Adapter pattern?

+21 pertanyaan wawancara

Kuasai Go untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis