Go

Desenvolvimento de CLI

Design de CLI, pacote flag, cobra/viper, estruturação de apps CLI, exit codes, stdin/stdout/stderr, padrões de UX, testes de apps CLI

20 perguntas de entrevista·
Senior
1

Qual é o papel principal do pacote flag em Go?

Resposta

O pacote flag fornece uma API simples para parsear os argumentos de linha de comando. Ele permite definir flags com tipos predefinidos (string, int, bool, etc.) e gerencia automaticamente o parsing e a validação. Esse pacote faz parte da biblioteca padrão e é adequado para CLIs simples.

2

Como definir um flag string com o pacote flag e recuperar seu valor?

Resposta

A função flag.String retorna um ponteiro para o valor do flag. Após chamar flag.Parse(), o valor pode ser acessado desreferenciando o ponteiro. Também é possível usar flag.StringVar para vincular diretamente a uma variável existente.

3

Qual é a diferença entre flag.String e flag.StringVar?

Resposta

flag.String aloca uma nova variável e retorna um ponteiro para ela, enquanto flag.StringVar vincula o flag a uma variável existente passada por endereço. StringVar é útil quando a variável precisa ser definida no nível do pacote ou quando se quer evitar desreferenciações.

4

Qual código de saída usar quando uma aplicação CLI encontra um erro de argumentos inválidos?

5

Qual é a principal vantagem do Cobra em relação ao pacote flag padrão?

+17 perguntas de entrevista

Domine Go para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis