
Développement CLI
CLI design, flag package, cobra/viper, structuring CLI apps, exit codes, stdin/stdout/stderr, UX patterns, testing CLI apps
1Quel est le rôle principal du package flag dans Go ?
Quel est le rôle principal du package flag dans Go ?
Réponse
Le package flag fournit une API simple pour parser les arguments en ligne de commande. Il permet de définir des flags avec des types prédéfinis (string, int, bool, etc.) et gère automatiquement le parsing et la validation. Ce package fait partie de la bibliothèque standard et convient aux CLI simples.
2Comment définir un flag string avec le package flag et récupérer sa valeur ?
Comment définir un flag string avec le package flag et récupérer sa valeur ?
Réponse
La fonction flag.String retourne un pointeur vers la valeur du flag. Après avoir appelé flag.Parse(), la valeur peut être accédée en déréférençant le pointeur. Il est aussi possible d'utiliser flag.StringVar pour lier directement à une variable existante.
3Quelle est la différence entre flag.String et flag.StringVar ?
Quelle est la différence entre flag.String et flag.StringVar ?
Réponse
flag.String alloue une nouvelle variable et retourne un pointeur vers celle-ci, tandis que flag.StringVar lie le flag à une variable existante passée par adresse. StringVar est utile quand la variable doit être définie au niveau du package ou quand on veut éviter les déréférencements.
Quel code de sortie utiliser quand une application CLI rencontre une erreur d'arguments invalides ?
Quel est l'avantage principal de Cobra par rapport au package flag standard ?
+17 questions d'entretien
Autres sujets d'entretien Go
Les bases de Go
Structures de données Go
Interfaces Go
Gestion des erreurs
Goroutines basiques
Channels
Go Modules
Serveur HTTP
Client HTTP
Encodage JSON
database/sql
Package context
Testing
Patterns de concurrence
Primitives de synchronisation
Frameworks web Go
Design d'API REST
gRPC
Reflection
Gestion mémoire
Optimisation des performances
Generics
Design Patterns Go
Microservices
Sécurité & Authentication
Docker & Containerization
Kubernetes Basics
Go Avancé
Maîtrise Go pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement