개요
AI 시대에 개발자가 가장 큰 고민으로 직면하는 문제는 “컨텍스트 부족”과 “코드 변경 시 전체 시스템이 무너지는 현상”입니다. 이 영상은 이러한 문제를 TDD(Test-Driven Development)와 클린 아키텍처를 Claude Skills와 결합하여 해결하는 실전 방법을 제시합니다.
이 영상은 코드팩토리(Code Factory)가 바이브코딩(Vibe Coding) 개발자를 위해 제작한 콘텐츠입니다. 코드팩토리는 NestJS, Flutter, TypeScript 등 다양한 프로그래밍 교육 콘텐츠를 제공하는 국내 개발 교육 전문 채널로, 실무 중심의 깊이 있는 기술 강의로 많은 개발자들에게 신뢰받고 있습니다.
핵심 내용
AI 시대의 TDD: 컨텍스트를 코드로 저장하는 방법
TDD는 Test-Driven Development의 약자로, 테스트 코드를 먼저 작성하고 개발하는 방법론입니다. 전통적으로 TDD는 Red-Green-Refactor 3단계로 구성됩니다:
Red Phase (실패 단계)
- 테스트 코드를 먼저 작성합니다
- 예를 들어
a + b함수의 성공/실패 케이스를 모두 테스트 코드로 작성 - 실제 구현 코드가 없어 모든 테스트가 실패하므로 “Red” Phase
Green Phase (성공 단계)
- Red Phase에서 작성한 테스트를 통과할 수 있는 최소한의 구현 코드 작성
- 테스트가 통과하면 “Green” Phase
Refactor Phase (개선 단계)
- 구현 코드의 품질을 향상시키는 단계
- 변수명 명확화, 로직 가독성 개선 등
영상에서는 AI 시대에 TDD가 특히 중요한 이유를 다음과 같이 설명합니다:
컨텍스트 보존: Red Phase에서 작성한 테스트 코드 자체가 컨텍스트가 됩니다. 여러 세션에 걸쳐 작업할 때, 새로운 세션에서 컨텍스트가 사라지더라도 테스트 코드를 기반으로 AI가 구현 방향을 쉽게 파악할 수 있습니다.
대규모 리팩토링 안전성: 큰 피처 추가나 리팩토링 시, 기존 테스트 코드가 “무엇을 수정해도 되고, 무엇을 건드리면 안 되는지” AI에게 명확한 가이드를 제공합니다.
AI의 장점과 TDD의 단점 상쇄: TDD의 가장 큰 단점은 “시간이 오래 걸린다”는 점입니다. 테스트 코드 작성, 3단계 프로세스 등 추가 작업이 필요합니다. 그러나 AI는 코드를 매우 빠르게 작성하므로, 이 단점이 상쇄되고 장점만 극대화됩니다.
실제로 영상에서는 Claude Skills를 통해 TDD 워크플로우를 자동화하는 방법을 보여줍니다. 300줄에 달하는 스킬 프롬프트에는 각 페이즈별로 어떤 작업을 해야 하는지, 품질 게이트는 무엇인지, 체크리스트는 무엇인지가 모두 명시되어 있어, AI가 자동으로 TDD 프로세스를 따르도록 설계되었습니다.
클린 아키텍처: 의존성 역전으로 컨텍스트 효율화
클린 아키텍처는 프로젝트의 핵심 도메인 로직을 중앙에 배치하고, 외부 요소(UI, DB, API 등)가 내부로 의존하도록 설계하는 아키텍처 패턴입니다.
레이어드 아키텍처(Layered Architecture)와의 비교
전통적인 레이어드 아키텍처:
- 위에서 아래로 순차적 의존 (Presentation → Business Logic → Data Access)
- 빠른 초기 개발 가능
- 하지만 한 곳을 수정하면 전체 시스템에 영향
- AI가 코드 수정 시 전체 코드를 모두 확인해야 함
클린 아키텍처:
- 도메인 모델이 중심, 외부에서 내부로 의존
- 외부 요소 변경 시에도 핵심 도메인 로직은 보호됨
- 의존성 역전(Dependency Inversion), IoC 컨테이너 활용
AI 시대의 클린 아키텍처 장점
영상에서는 클린 아키텍처가 AI 개발에 특히 유용한 이유를 설명합니다:
- 컨텍스트 분리: 레이어드 아키텍처에서는 코드 수정 시 AI가 전체 코드를 확인해야 하지만, 클린 아키텍처는 의존성이 끊겨 있어 특정 영역만 확인하면 됩니다.
- 레고 블록 방식 개발: 컨텍스트를 나눠서 작업해도 완성도 높은 코드 작성 가능. 큰 프로젝트에서도 컨텍스트를 효율적으로 소비하면서 점진적으로 기능 추가 가능.
- 바이브코딩 초보자 문제 해결: “컨텍스트 부족”과 “하나 바꾸면 전체가 깨짐” 문제를 클린 아키텍처로 해결 가능.
실제 구조
영상에서 보여준 클린 아키텍처 구조:
- Domain Layer (중앙): 핵심 비즈니스 로직
- Application Layer: 유즈케이스, 서비스 로직
- Infrastructure Layer: DB, 외부 API 연동
- Presentation Layer: UI, 컨트롤러
모든 레이어가 Domain Layer에 의존하는 형태로, Domain이 변경되지 않는 한 외부 변경에도 안정적입니다.
Claude Skills로 구현하는 Feature Planner
영상의 하이라이트는 TDD와 클린 아키텍처를 자동화하는 “Feature Planner” Claude Skill입니다.
Feature Planner의 구조
스킬은 약 300줄로 구성되며, 다음 요소를 포함합니다:
- TDD 워크플로우 명세: Red-Green-Refactor 각 단계에서 무엇을 해야 하는지 구체적으로 기술
- 폴더 구조 정의: 플랜 문서를 저장할 위치 지정
- 아키텍처 결정: 클린 아키텍처 등 원하는 아키텍처 패턴 명시
- 사용자 확인 강제: AI가 불확실한 부분(기술 스택, 구조 등)을 반드시 사용자에게 질문하도록 설정
- 품질 게이트 기준: 다음 작업으로 넘어가기 전 체크해야 할 항목들 명시
- 진행 상황 체크: 체크박스로 각 단계 완료 여부 확인
- 테스트 전략: Unit Test, Integration Test, E2E Test를 어떤 기준으로 작성할지 정의
가장 중요한 장점은 모든 계획이 하나의 마크다운 파일에 저장되어, 중간에 세션이 끊기거나 컨텍스트가 부족해져도 언제든 파일을 참조하여 작업을 이어갈 수 있다는 점입니다.
실전 가이드
Feature Planner 스킬을 실제로 활용하는 단계별 프로세스입니다.
1단계: Feature Planner 스킬 설치
먼저 GitHub 레포지토리에서 Feature Planner 스킬을 다운로드합니다: https://github.com/serendipity1004/cc-feature-implementer
Claude Code 프로젝트의 .claude/commands/ 디렉토리에 스킬 파일들을 배치합니다. 이렇게 하면 Claude가 스킬을 인식하고 컨텍스트를 필요할 때만 로드하여 효율적으로 사용할 수 있습니다.
2단계: 프로젝트 초기 플랜 생성
새로운 기능이나 프로젝트를 시작할 때 다음과 같이 요청합니다: “피처 플래너 스킬을 사용해서 클린 아키텍처 구조로 [원하는 기능]을 계획해 줘.”
Claude가 기술 스택, 데이터베이스, 프레임워크 등에 대해 질문하면 답변하여 구체적인 플랜 문서를 생성합니다.
3단계: Phase별 구현 진행
플랜이 생성되면 첫 번째 Phase부터 차례대로 구현합니다. 각 Phase가 완료될 때마다 Claude는 테스트 커버리지, 빌드/린트 통과를 확인하고 체크박스를 자동으로 체크합니다.
4단계: 컨텍스트 유지 및 재개
작업 중 세션이 끊기거나 다른 작업을 하다가 돌아올 때, 플랜 파일을 참조하면 어떤 Phase까지 완료했는지 확인하고 다음 작업을 이어갈 수 있습니다.
5단계: 품질 검증 및 완료
모든 Phase가 완료되면 최종 품질 게이트를 확인합니다. 전체 테스트 통과, 커버리지 90% 이상, 린트 에러 없음, 빌드 성공 등을 자동으로 검증하고, 실제 API 동작, 보안 취약점, 성능 등을 수동으로 확인합니다.
비판적 검토
이 영상은 AI 시대의 개발 방법론을 실전적으로 다루고 있으며, 특히 TDD와 클린 아키텍처를 Claude Skills로 자동화하는 접근이 매우 혁신적입니다.
다만 몇 가지 보완이 필요한 부분도 있습니다:
학습 곡선: TDD와 클린 아키텍처는 각각 깊이 있는 학습이 필요한 주제입니다. Feature Planner 스킬만으로 이 개념들을 완전히 이해하기는 어려울 수 있습니다.
아키텍처 선택의 유연성: 클린 아키텍처가 모든 프로젝트에 적합한 것은 아닙니다. 작은 프로토타입에서는 오히려 레이어드 아키텍처가 더 유리할 수 있습니다.
테스트 커버리지 90% 기준: 현실적으로 모든 코드에 90% 커버리지가 필요한 것은 아닙니다. 간단한 getter/setter, DTO 등은 테스트 작성 비용 대비 효과가 낮을 수 있습니다.
향후 AI 에이전트의 발전, 컨텍스트 윈도우 확장 등을 고려하면, TDD와 클린 아키텍처 같은 체계적인 개발 방법론의 중요성은 더욱 커질 것입니다.
핵심 요점
- TDD는 AI 시대의 컨텍스트 저장소다: Red Phase에서 작성한 테스트 코드는 여러 세션에 걸친 작업의 연속성을 보장하는 “살아있는 문서”입니다.
- 클린 아키텍처는 컨텍스트 효율화의 핵심이다: Domain Layer를 중심으로 외부가 내부로 의존하는 구조는 AI가 코드 변경 시 확인해야 할 범위를 크게 줄여줍니다.
- Feature Planner는 개발 방법론을 자동화한다: 300줄 분량의 스킬 프롬프트에는 TDD 사이클, 품질 게이트, 테스트 전략이 모두 명시되어 있습니다.
- 플랜 문서는 프로젝트의 단일 진실 공급원이다: 플랜 파일은 프로젝트의 목표, 아키텍처 결정, 작업 내용, 진행 상황을 모두 담고 있습니다.
- AI 시대의 개발은 지속 가능한 구조 설계가 핵심이다: TDD와 클린 아키텍처를 자동화하여 장기적으로 유지보수 가능한 코드베이스를 구축하는 것이 진짜 가치입니다.
참고자료
영상 제공 자료
- Feature Planner 스킬 레포지토리: https://github.com/serendipity1004/cc-feature-implementer
- 국내 최초 클로드 코드 완벽 가이드: https://bit.ly/4lEuMvd
- 코드팩토리 통합 링크: https://links.codefactory.ai
- 바이브코딩 오픈톡방: https://open.kakao.com/o/gDUhYNDh
추가 학습 자료
- 코드팩토리 NestJS 마스터클래스: https://bit.ly/fcnestjs
- 코드팩토리 TypeScript 마스터 클래스: https://inf.run/3r8Jd
- 코드팩토리 AI 메일링 리스트: https://page.stibee.com/subscriptions/437644
이 글은 YouTube 자동 생성 자막(자막 추출일: 2025-12-24)을 바탕으로 작성되었습니다.