Go

Tworzenie CLI

Projektowanie CLI, pakiet flag, cobra/viper, strukturyzacja aplikacji CLI, exit code, stdin/stdout/stderr, wzorce UX, testowanie aplikacji CLI

20 pytań z rozmów·
Senior
1

Jaka jest główna rola pakietu flag w Go?

Odpowiedź

Pakiet flag dostarcza proste API do parsowania argumentów wiersza poleceń. Pozwala definiować flagi z predefiniowanymi typami (string, int, bool itp.) i automatycznie obsługuje parsowanie oraz walidację. Ten pakiet jest częścią biblioteki standardowej i nadaje się do prostych CLI.

2

Jak zdefiniować flagę string za pomocą pakietu flag i pobrać jej wartość?

Odpowiedź

Funkcja flag.String zwraca wskaźnik do wartości flagi. Po wywołaniu flag.Parse() można uzyskać dostęp do wartości poprzez dereferencję wskaźnika. Można też użyć flag.StringVar, aby powiązać bezpośrednio z istniejącą zmienną.

3

Jaka jest różnica między flag.String a flag.StringVar?

Odpowiedź

flag.String alokuje nową zmienną i zwraca do niej wskaźnik, podczas gdy flag.StringVar wiąże flagę z istniejącą zmienną przekazaną przez adres. StringVar jest przydatne, gdy zmienna musi być zdefiniowana na poziomie pakietu lub gdy chce się uniknąć dereferencji.

4

Jakiego kodu wyjścia użyć, gdy aplikacja CLI napotka błąd nieprawidłowych argumentów?

5

Jaka jest główna zaleta Cobry w porównaniu ze standardowym pakietem flag?

+17 pytań z rozmów

Opanuj Go na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo