Go

CLI Geliştirme

CLI tasarımı, flag paketi, cobra/viper, CLI uygulamalarını yapılandırma, exit code'lar, stdin/stdout/stderr, UX desenleri, CLI uygulamalarını test etme

20 mülakat soruları·
Senior
1

Go'da flag paketinin temel rolü nedir?

Cevap

flag paketi, komut satırı argümanlarını ayrıştırmak için basit bir API sağlar. Önceden tanımlı tiplerle (string, int, bool vb.) flag tanımlamaya olanak tanır ve ayrıştırma ile doğrulamayı otomatik olarak yönetir. Bu paket standart kütüphanenin bir parçasıdır ve basit CLI'lar için uygundur.

2

flag paketiyle bir string flag nasıl tanımlanır ve değeri nasıl alınır?

Cevap

flag.String fonksiyonu, flag değerine bir pointer döndürür. flag.Parse() çağrıldıktan sonra, pointer dereference edilerek değere erişilebilir. Mevcut bir değişkene doğrudan bağlamak için flag.StringVar de kullanılabilir.

3

flag.String ile flag.StringVar arasındaki fark nedir?

Cevap

flag.String yeni bir değişken ayırır ve ona bir pointer döndürür, flag.StringVar ise flag'i adres yoluyla geçirilen mevcut bir değişkene bağlar. StringVar, değişkenin paket düzeyinde tanımlanması gerektiğinde veya dereference işlemlerinden kaçınmak istendiğinde kullanışlıdır.

4

Bir CLI uygulaması geçersiz argüman hatasıyla karşılaştığında hangi exit code kullanılmalıdır?

5

Cobra'nın standart flag paketine göre temel avantajı nedir?

+17 mülakat soruları

Bir sonraki mülakatın için Go'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla