Go

Pengembangan CLI

Desain CLI, paket flag, cobra/viper, penataan aplikasi CLI, exit code, stdin/stdout/stderr, pola UX, pengujian aplikasi CLI

20 pertanyaan wawancaraยท
Senior
1

Apa peran utama paket flag di Go?

Jawaban

Paket flag menyediakan API sederhana untuk mem-parsing argumen command-line. Paket ini memungkinkan pendefinisian flag dengan tipe yang sudah ditentukan (string, int, bool, dll.) dan secara otomatis menangani parsing dan validasi. Paket ini merupakan bagian dari standard library dan cocok untuk CLI sederhana.

2

Bagaimana cara mendefinisikan flag string dengan paket flag dan mengambil nilainya?

Jawaban

Fungsi flag.String mengembalikan pointer ke nilai flag. Setelah memanggil flag.Parse(), nilai dapat diakses dengan men-dereference pointer tersebut. Anda juga dapat menggunakan flag.StringVar untuk mengikat langsung ke variabel yang sudah ada.

3

Apa perbedaan antara flag.String dan flag.StringVar?

Jawaban

flag.String mengalokasikan variabel baru dan mengembalikan pointer ke variabel tersebut, sedangkan flag.StringVar mengikat flag ke variabel yang sudah ada yang dilewatkan melalui alamat. StringVar berguna ketika variabel perlu didefinisikan pada level paket atau ketika ingin menghindari dereference.

4

Exit code apa yang harus digunakan ketika aplikasi CLI menemui error argumen yang tidak valid?

5

Apa keunggulan utama Cobra dibandingkan paket flag standar?

+17 pertanyaan wawancara

Kuasai Go untuk wawancara berikutnya

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

Mulai gratis