바이브 코딩 사전

러버덕 프롬프팅

바이브 코딩 사전

러버덕 프롬프팅

AI에게 질문을 하면서 자신의 코드와 문제를 설명하는 학습 방법으로, 러버덕 디버깅의 학습 목적 확장판이다. 러버덕 디버깅이 '버그를 찾는 것'에 초점을 맞춘다면, 러버덕 프롬프팅은 '개념을 이해하는 것'에 초점을 맞춘다. 핵심 원리: AI에게 자신이 이해한 바를 설명하고, AI의 피드백을 통해 이해의 빈틈을 발견하고, 이를 채워나가는 반복적 학습 과정이다. 예를 들어, '이 코드가 왜 무한 루프에 빠지는지 설명해줘. 내가 이해한 바로는 useEffect가 매 렌더마다 호출되는 것 같은데…'라고 AI에게 말하면, 설명하는 과정에서 자신의 이해를 정리하게 되고, AI는 오해를 교정하거나 추가 설명을 제공한다. 바이브 코딩에서 이 기법이 특히 중요한 이유: AI가 코드를 생성하면 개발자가 코드를 '직접 작성'하지 않았기 때문에 코드에 대한 이해가 부족할 수 있다. 러버덕 프롬프팅을 통해 AI가 생성한 코드를 이해하는 습관을 들이면, '코드를 이해하지 못한 채 AI에게 의존하는' 함정을 피할 수 있다.

예시

'이 코드가 왜 무한 루프에 빠지는지 설명해줘. 내가 이해한 바로는 useEffect가 매 렌더마다 호출되는 것 같은데…'

카테고리

학습·온보딩

난이도

basic

태그

러버덕프롬프팅 · 학습법

함께 읽기

연관 용어

학습·온보딩

스캐폴드

프로젝트의 기본 구조(폴더 구조, 설정 파일, 보일러플레이트 코드, 환경 변수 템플릿)를 자동으로 생성하는 것으로, '비계(scaffold)'라는 건축 용어에서 유래했다. 건축에서 비계가 건물을 짓기 위한 임시 구조물인 것처럼, 코딩에서 스캐폴드는 프로젝트를 시작하기 위한 기본 틀을 제공한다. 바이브 코딩에서 스캐폴드는 가장 효과적인 첫 단계이다. AI에게 'Next.js + Tailwind + Supabase 프로젝트를 초기 설정해줘'라고 하면 전체 폴더 구조(app/, components/, lib/, hooks/), 설정 파일(next.config.js, tailwind.config.js, tsconfig.json), 환경 변수 템플릿(.env.example), 패키지 의존성(package.json), 기본 레이아웃 컴포넌트까지 한 번에 생성한다. 이후 이 스캐폴드 위에서 기능을 하나씩 추가해나가는 것이 바이브 코딩의 권장 워크플로이다. create-next-app, create-vite 같은 전통적 CLI 스캐폴더도 있지만, AI를 통한 스캐폴딩은 프로젝트의 구체적 요구사항(사용할 DB, 인증 방식, 디자인 시스템 등)을 반영한 맞춤형 초기 설정을 제공한다는 점에서 차별화된다.

학습·온보딩

AI 페어 프로그래밍

인간 개발자와 AI가 함께 실시간으로 코드를 작성하는 개발 방식으로, 전통적인 페어 프로그래밍(두 명의 개발자가 하나의 컴퓨터에서 함께 코딩)의 AI 버전이다. 전통적 페어 프로그래밍에서 한 명이 코드를 작성(드라이버)하고 다른 한 명이 실시간으로 검토·제안(네비게이터)하듯, AI 페어 프로그래밍에서는 개발자와 AI가 이 두 역할을 번갈아 수행한다. 일반적인 패턴: 개발자가 함수 시그니처나 주석으로 의도를 표현하면 AI가 구현부를 제안하고, 개발자가 이를 검토·수정한 후 수락한다. 또는 AI가 코드를 먼저 생성하고 개발자가 리뷰하며 수정 지시를 내린다. GitHub Copilot이 'Your AI pair programmer(당신의 AI 페어 프로그래머)'를 공식 슬로건으로 사용하고 있으며, 이 방식이 바이브 코딩 스펙트럼에서 'AI-Assisted Coding' 영역에 해당한다. 바이브 코딩이 'AI에게 완전히 맡기는 것'이라면, AI 페어 프로그래밍은 '인간과 AI가 동등하게 협업하는 것'으로, 코드에 대한 인간의 이해를 유지하면서도 AI의 생산성을 활용하는 균형 잡힌 접근이다.