
CLI 개발
CLI 설계, flag 패키지, cobra/viper, CLI 앱 구조화, exit code, stdin/stdout/stderr, UX 패턴, CLI 앱 테스트
20 면접 질문·
Senior
1Go의 flag 패키지의 주요 역할은 무엇입니까?
1
Go의 flag 패키지의 주요 역할은 무엇입니까?
답변
flag 패키지는 명령줄 인자를 파싱하기 위한 간단한 API를 제공합니다. 사전 정의된 타입(string, int, bool 등)으로 flag를 정의할 수 있으며 파싱과 검증을 자동으로 처리합니다. 이 패키지는 표준 라이브러리의 일부이며 간단한 CLI에 적합합니다.
2flag 패키지로 string flag를 정의하고 그 값을 가져오려면 어떻게 해야 합니까?
2
flag 패키지로 string flag를 정의하고 그 값을 가져오려면 어떻게 해야 합니까?
답변
flag.String 함수는 flag 값에 대한 포인터를 반환합니다. flag.Parse()를 호출한 후, 포인터를 역참조하여 값에 접근할 수 있습니다. 기존 변수에 직접 바인딩하기 위해 flag.StringVar를 사용할 수도 있습니다.
3flag.String과 flag.StringVar의 차이는 무엇입니까?
3
flag.String과 flag.StringVar의 차이는 무엇입니까?
답변
flag.String은 새 변수를 할당하고 그것에 대한 포인터를 반환하는 반면, flag.StringVar는 주소로 전달된 기존 변수에 flag를 바인딩합니다. StringVar는 변수를 패키지 수준에서 정의해야 하거나 역참조를 피하고 싶을 때 유용합니다.
4
CLI 애플리케이션이 잘못된 인자 오류를 만났을 때 어떤 exit code를 사용해야 합니까?
5
표준 flag 패키지에 비해 Cobra의 주요 장점은 무엇입니까?
+17 면접 질문
기타 Go 면접 주제
Go 기초
Junior
25개 질문Go 데이터 구조
Junior
20개 질문Go 인터페이스
Junior
18개 질문에러 처리
Junior
20개 질문Goroutine 기초
Junior
20개 질문Channels
Junior
22개 질문Go Modules
Mid-Level
18개 질문HTTP 서버
Mid-Level
24개 질문HTTP 클라이언트
Mid-Level
18개 질문JSON 인코딩
Mid-Level
20개 질문Database/SQL
Mid-Level
22개 질문context 패키지
Mid-Level
20개 질문Testing
Mid-Level
22개 질문동시성 패턴
Mid-Level
24개 질문동기화 프리미티브
Mid-Level
22개 질문Go 웹 프레임워크
Mid-Level
20개 질문REST API 설계
Mid-Level
20개 질문gRPC
Mid-Level
22개 질문Reflection
Senior
20개 질문메모리 관리
Senior
24개 질문성능 최적화
Senior
22개 질문Generics
Senior
20개 질문Go Design Patterns
Senior
24개 질문Microservices
Senior
24개 질문보안 및 인증
Senior
24개 질문Docker & Containerization
Senior
20개 질문Kubernetes Basics
Senior
22개 질문고급 Go
Senior
20개 질문