코딩 프롬프트
모든 언어의 코드 설명, 디버깅, 테스트 작성, 리팩터링, 코드 리뷰, 문서화 등 일상적인 개발 업무를 돕는 프롬프트예요.
이 코딩 프롬프트들은 단순한 예제가 아닌 실제 프로젝트를 위해 작성되었어요. 낯선 코드 분석부터 가설 기반 디버깅, 단위 테스트 작성, 리팩터링, diff 리뷰, SQL, 정규 표현식, Git 문제 해결, 보안 점검, 문서화 및 간단한 스크립트 작성까지 폭넓게 다룹니다. 대부분의 언어에서 바로 쓸 수 있어요. [대괄호] 안에 언어, 프레임워크, 도구를 입력하고 프롬프트 안내에 따라 코드를 붙여넣기만 하면 돼요. 전체 파일보다는 짧고 핵심적인 코드 스니펫을 넣어야 훨씬 더 좋은 답변을 얻을 수 있습니다.
각 프롬프트는 직접 검증할 수 있는 결과물을 요청하도록 설계되었어요. 테스트는 바로 실행해 볼 수 있고, 설명은 코드와 대조해 검증할 수 있으며, 버그 수정에는 명확한 이유가 함께 제공됩니다. AI는 겉보기엔 그럴듯하지만 예외 케이스에서 실패하거나 존재하지 않는 함수를 쓸 때가 있어 직접 확인하는 과정이 중요한데요, 이 프롬프트를 쓰면 잘못된 답변을 훨씬 쉽게 잡아낼 수 있어요. '복사'를 눌러 에디터나 메모장에 가져가거나, '채팅에서 사용'을 눌러 ChatG에서 바로 열어보세요. 코드 하이라이트와 복사 버튼이 포함된 블록으로 깔끔하게 표시됩니다.
코드를 붙여넣기 전에 API 키, 비밀번호, 토큰, 고객 데이터 등 민감한 정보는 반드시 지우고, 외부 AI 서비스에 코드를 공유해도 되는지 사내 규정을 먼저 확인해 주세요. 단일 질문이라면 코드 어시스턴트를 쓰는 게 더 빠릅니다. 작업 워크플로와 한계점에 대해 더 자세히 알아보고 싶다면 코딩을 위한 AI 활용법과 개발자를 위한 ChatG를 참고해 보세요.
이 프롬프트들을 맞춤 조정하는 방법
- 버전과 제약 조건 추가하기: 언어 버전, 프레임워크, 런타임 환경 및 "새로운 의존성 추가 금지" 같은 조건을 명시하세요.
- 입력 코드 줄이기: 문제가 재현되는 최소한의 코드 예시로 압축해 보세요.
- 결과를 다시 공유하기: 수정한 코드를 실행해 본 뒤, 새로 발생한 오류와 함께 다시 입력하고 다음에 시도할 방법을 물어보세요.
- 원하는 출력 형식 지정하기: diff 형태, 단일 함수, 옵션 비교 표 등 구체적인 형식을 요청하세요.
생성된 코드는 실행하기 전에 반드시 직접 검토하고, 먼저 안전한 환경에서 테스트해 보세요.
-
01
시니어 엔지니어 관점의 코드 설명
당신은 주니어 개발자를 멘토링하는 시니어 [언어] 엔지니어예요. 아래 코드가 무엇을 하는지 단계별로 설명해 주고, 특이하거나 위험한 부분, 또는 리팩토링할 만한 지점을 짚어 주세요. 코드: [코드 붙여넣기]
-
02
원인 순위별 오류 디버깅
[언어 또는 프레임워크] 코드에서 다음 오류가 발생해요: [오류 및 스택 트레이스 붙여넣기]. 관련 코드는 다음과 같아요: [코드 붙여넣기]. 가능성이 높은 원인 3가지를 순서대로 나열하고, 각 원인을 검증하는 방법과 가장 유력한 원인에 대한 해결책을 알려주세요.
-
03
엣지 케이스를 포함한 단위 테스트
아래 함수를 위해 [테스트 프레임워크] 단위 테스트를 작성해 주세요. 정상 입력값, 경계값, 빈 값이나 null 입력, 유효하지 않은 타입을 모두 다루고, 각 테스트 함수명은 검증하는 동작이 드러나게 지어주세요. 함수: [함수 붙여넣기]
-
04
동작 변경 없는 코드 리팩토링
기존 동작을 변경하지 않고 이 [언어] 코드의 가독성과 유지보수성을 높이도록 리팩토링해 주세요. 명확한 이름 사용, 함수 분리, 중복 코드 최소화를 적용하고 퍼블릭 인터페이스는 그대로 유지해 주세요. 각 변경 사항도 간단히 설명해 주세요. 코드: [코드 붙여넣기]
-
05
심각도별 PR 리뷰
엄격하면서도 친절한 리뷰어의 관점으로 이 PR diff를 리뷰해 주세요. 피드백을 버그, 보안, 성능, 코드 스타일별로 분류하고, 각각 필수 수정(blocking)인지 선택 사항(optional)인지 표시한 뒤 구체적인 코드 수정안을 제안해 주세요. diff: [diff 붙여넣기]
-
06
테이블 정의 기반 SQL 쿼리 작성
다음 테이블들을 바탕으로 [필요한 작업 설명]을 수행하는 [PostgreSQL, MySQL 또는 SQLite] 쿼리를 작성해 주세요: [테이블 정의 붙여넣기]. 쿼리를 알기 쉽게 설명해 주시고 테이블 데이터가 클 경우에 대비한 인덱스도 추천해 주세요.
-
07
테스트 문자열을 포함한 정규식
[언어 또는 도구]에서 [원하는 패턴 설명]과 매칭되지만 [예외 사항 설명]은 제외하는 정규표현식을 작성해 주세요. 패턴의 각 부분을 설명하고, 매칭되어야 하는 예시 5개와 매칭되지 않아야 하는 예시 5개를 함께 제시해 주세요.
-
08
다른 언어로 코드 변환
이 [소스 언어] 코드를 관용적인 [타깃 언어] 코드로 변환해 주세요. 한 줄씩 직역하지 말고 타깃 언어의 표준 라이브러리와 일반적인 패턴을 사용해 주세요. 정수 나눗셈이나 오류 처리 등 달라지는 동작이 있다면 짚어 주세요. 코드: [코드 붙여넣기]
-
09
입력값 검증을 갖춘 API 엔드포인트
[수행할 작업]을 처리하는 [HTTP 메서드] [라우트 경로]용 [프레임워크] 엔드포인트를 작성해 주세요. 다음 입력 필드를 검증하고 [필드 및 검증 규칙], 올바른 상태 코드와 명확한 오류 메시지를 반환해 주세요. 요청 및 응답 예시도 함께 포함해 주세요.
-
10
Dry-run 기능이 있는 안전한 셸 스크립트
[작업 내용, 예: 폴더 내 모든 사진 이름을 촬영 날짜로 변경]을 수행하는 [bash 또는 PowerShell] 스크립트를 작성해 주세요. 안전을 위해 테스트 실행(dry-run) 옵션을 넣고, 오류 발생 시 즉시 중단되게 하며, 진행 상황을 출력하도록 해 주세요. 각 섹션마다 주석도 달아주세요.
-
11
성능 병목 지점 찾기 및 해결
이 [언어] 함수는 약 [입력 크기]의 대규모 입력에서 속도가 느립니다: [코드 붙여넣기]. 시간 및 공간 복잡도를 설명하고 병목 지점을 찾은 뒤, 개선된 복잡도를 갖는 더 빠른 버전의 코드를 제안해 주세요. 출력 결과는 동일해야 합니다.
-
12
데이터베이스 스키마 설계
[요구사항] 조건에 맞춰 [앱 설명, 예: 소규모 예약 시스템]을 위한 데이터베이스 스키마를 설계해 주세요. 테이블, 컬럼 타입, 키, 관계를 명시하고, 서비스가 성장함에 따라 재검토해야 할 설계 요소 하나를 짚어 주세요.
-
13
독스트링 및 주석 추가
아래 코드에 표준 [언어] 스타일에 맞춘 명확한 독스트링이나 주석을 추가해 주세요. 각 함수의 목적, 매개변수, 반환값, 발생 가능한 오류를 설명해 주시고 코드 자체는 수정하지 마세요. 코드: [코드 붙여넣기]
-
14
Git 문제 안전하게 해결하기
현재 Git에서 이런 문제가 발생했어요: [상황 설명, 예: 잘못된 브랜치에 커밋하고 푸시함]. 지금 어떤 상태인지 설명해 주고, 안전하게 해결할 수 있는 정확한 명령어를 알려주세요. 공유된 히스토리를 덮어쓰는 위험한 명령어가 있다면 주의사항도 함께 알려주세요.
-
15
연습 문제로 개념 익히기
[언어]로 [프로그래밍 개념, 예: 재귀 또는 클로저]을(를) 가르쳐 주세요. 짧은 설명과 간단한 예제로 시작한 다음, 점점 난이도가 높아지는 연습 문제 3개를 내주세요. 각 문제의 정답을 보여주기 전에 먼저 제 답변을 기다려 주세요.
-
16
코드 스니펫 보안 점검
다음 [언어] 코드에서 인젝션, 안전하지 않은 역직렬화, 입력값 검증 누락, 하드코딩된 비밀 정보, 취약한 인증 등의 보안 문제가 있는지 점검해 주세요. 각 문제마다 보안 위험을 설명하고 수정된 코드를 보여주세요. 코드: [코드 붙여넣기]
-
17
diff 기반 명확한 커밋 메시지 작성
다음 변경 사항에 대한 커밋 메시지를 작성해 주세요. 요약줄은 72자 이내의 짧은 명령문 형태로 작성하고, 본문에는 변경된 내용과 이유를 설명해 주세요: [diff 설명 또는 붙여넣기]
-
18
라이브러리 및 접근 방식 비교
[언어 또는 프레임워크] 프로젝트에서 [제약 조건, 예: 작은 번들 크기, 네이티브 종속성 없음] 제약 조건을 고려해 [작업]을(를) 구현해야 해요. 2~3가지 일반적인 접근 방식이나 라이브러리의 장단점과 권장 사용 시점을 표로 비교해 주고, 공식 문서에서 구체적으로 확인해야 할 세부 사항도 알려주세요.
-
19
접근성을 고려한 UI 컴포넌트
[요구 사항]을(를) 만족하는 접근성 높은 [컴포넌트, 예: 탭 위젯] 컴포넌트를 [프레임워크, 또는 순수 HTML, CSS, JavaScript] 기반으로 만들어 주세요. 키보드 탐색 지원, 필요한 ARIA 속성, 간단한 사용 예제를 함께 포함해 주세요.
-
20
데이터 파일 정리 및 처리 스크립트
[열 목록] 열이 포함된 [파일 형식, 예: CSV 파일]을(를) 읽어 [계산하거나 변환할 내용]을(를) 수행하고 결과를 [출력 위치]에 저장하는 [언어] 스크립트를 작성해 주세요. 결측값과 잘못된 형식의 행을 적절히 처리하고, 마지막에 간단한 요약을 출력해 주세요.