golang-pro
프로덕션 급 Go 애플리케이션 구축
متاح أيضًا من: sickn33
Go 애플리케이션 구축은 동시성 패턴, 제네릭, 마이크로서비스 아키텍처에 대한 깊은 이해가 필요합니다. 이 스킬은 고성능 시스템을 위한 관습적 패턴과 함께 Go 1.21+ 개발에 대한 전문적인 지침을 제공합니다.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "golang-pro". 5개의 워커로 동시성 워커 풀 생성
النتيجة المتوقعة:
- WorkerPool 구조체와 함께 Go 코드 구현
- 채널 기반 작업 분산
- 컨텍스트 취소로 우아한 종료
- 워커 완료를 위한 WaitGroup 동기화
استخدام "golang-pro". 제네릭 Map 함수 작성
النتيجة المتوقعة:
- 함수 시그니처: func Map[T, U any](slice []T, fn func(T) U) []U
- 타입 안전 제네릭 구현
- int 및 string 타입을 사용한 예제 사용법
- 성능 고려사항
استخدام "golang-pro". Go 관습에 따른 스토리지 인터페이스 설계
النتيجة المتوقعة:
- 작고 집중된 인터페이스 정의
- 인터페이스를 받고 구조체를 반환하는 패턴
- io.Reader/Writer 구성 예시
- 테스트가 있는 구체적 구현
التدقيق الأمني
مخاطر منخفضةDocumentation skill with legitimate Go programming patterns. All 195 static findings are false positives triggered by code examples in markdown files. No malicious intent detected.
مشكلات متوسطة المخاطر (5)
عوامل الخطر
⚡ يحتوي على سكربتات
⚙️ الأوامر الخارجية
🌐 الوصول إلى الشبكة
📁 الوصول إلى نظام الملفات
🔑 متغيرات البيئة
درجة الجودة
ماذا يمكنك بناءه
동시성 API 서비스 구축
동시성 요청 처리를 위한 goroutine과 채널을 사용하여 적절한 컨텍스트 전파로 고성능 Go API를 설계하고 구현합니다.
gRPC 마이크로서비스 개발
Protocol Buffers와 gRPC를 사용하여 적절한 인터페이스 설계와 에러 처리 패턴으로 타입 안전 마이크로서비스를 생성합니다.
Go 코드 성능 최적화
벤치마크, pprof 분석 및 관습적 패턴을 사용하여 기존 Go 코드를 더 나은 성능을 위해 리팩토링합니다.
جرّب هذه الموجهات
[기능 설명]을 구현하는 Go 함수를 작성하세요. 적절한 에러 처리와 컨텍스트 지원을 사용하여 관습적인 Go 1.21+ 패턴을 사용하세요.
항목을 동시에 처리하는 Go에서 워커 풀을 생성하세요. 우아한 종료, sync.WaitGroup을 사용한 적절한 동기화, 컨텍스트 취소 처리를 포함하세요.
[제네릭 함수 설명]을 수행하는 타입 파라미터가 있는 제네릭 Go 함수를 작성하세요. 제약 조건 패키지 또는 커스텀 인터페이스의 적절한 제약 조건을 사용하세요.
[서비스 이름]을 가진 완전한 gRPC 마이크로서비스를 설계하세요. protobuf 정의, 서버 구현, 인터페이스 계약, 80%+ 커버리지의 테이블 기반 테스트를 포함하세요.
أفضل الممارسات
- goroutine 누수를 방지하기 위해 명확한 수명주기 관리와 컨텍스트 전파와 함께 goroutine 사용
- 포괄적인 커버리지와 가독성 있는 실패 출력을 위해 하위 테스트와 함께 테이블 기반 테스트 작성
- 유연하고 테스트 가능한 코드를 위해 '인터페이스를 받고 구조체를 반환' 패턴 적용
تجنب
- goroutine에 채널 동기화나 컨텍스트 취소 처리 없이 goroutine 생성하지 않기
- 제네릭이 충분할 때 리플렉션을 타입 어설션에 사용하지 않기
- 구성 값을 하드코딩하지 말고; 함수형 옵션이나 환경 변수 대신 사용