본문 바로가기

회의록

AI와 협업 프로젝트: 회의록 2/2

https://cs-essay.tistory.com/107    AI와 협업 프로젝트: 회의록 1/2

https://cs-essay.tistory.com/109    AI와 협업 프로젝트: 설계 1/2

 

좋습니다!
그럼 1차 설계 포스팅에 이어지는 2차 블로그 포스팅,
“협업자를 위한 설계 문서와 준비물”
글을 작성해드릴게요.


🤝 MUD 게임 코어 설계 이후, 협업자를 위한 준비 사항

“코어는 완성됐다. 이제 누구든 모듈을 붙일 수 있어야 한다.”


🎯 목표

코어는 누구든 붙일 수 있게 설계되었지만,
협업자가 빠르게 이해하고, 실수 없이 개발하려면
다음과 같은 추가 문서와 준비물이 필요합니다.


🧩 1. 명세 문서 (README.md 또는 docs/spec.md)

  • 📌 목적: 새로운 사람이 프로젝트를 이해하고, 개발 규칙을 따르도록 안내
  • 📄 내용 예시:
# MUD Game Core 개발자 가이드

## 🧱 모듈 작성 규칙

1. GameModule 인터페이스를 상속
2. 반드시 `run(command, player_state)` 메서드를 구현
3. `info()` 메서드로 모듈 설명 제공

## 📦 디렉토리 구조
modules/
└── fishing/
    └── fishing.py

🧪 2. 예제 모듈 (FishingModule)

  • 📌 목적: 코어에 모듈을 어떻게 붙이는지 실물 예제로 제시
  • 이 예제 하나만 있으면 나머지는 복붙 + 수정으로 개발 가능
  • 포함 예시:
    • fishing.py (모듈 본체)
    • README.md (간단 설명)
    • test_commands.txt (테스트 명령어 목록)

📁 3. 디렉토리 구조 설명

mud_game/
├── core/              ← GameCore 클래스
├── modules/           ← 기능 모듈 폴더
│   └── fishing/
│       └── fishing.py
├── data/              ← 플레이어 상태 저장
├── logs/              ← 게임 로그
└── docs/              ← 문서 폴더 (규칙, 명세 등)
  • 📌 목적: 새로운 모듈이 어디에 들어가야 할지 혼란 없게 함

🎨 4. 코드 스타일 가이드 (선택 사항)

  • 변수 명명법, 들여쓰기, 주석 양식 등 일관된 코드를 유지하게 도와줌
  • 예:
# Good
def run(self, command: str, player_state: dict) -> str:

# Bad
def Run( strCommand, st ):

🧠 5. 협업 규칙 (간단하게)

  • 모듈별 디렉토리 필수
  • README 포함
  • 충돌 방지를 위한 브랜치/PR 전략 등

✨ 요약: 협업자 준비 체크리스트

항목 목적 필수도

README.md 개발 규칙 안내
FishingModule 모듈 개발 예제
폴더 구조 명세 개발자가 길을 잃지 않게
코드 스타일 가이드 일관된 코드 유지 ⭕ (권장)
협업 전략 문서 충돌/혼선 예방 ⭕ (팀 작업 시)

📌 결론

지금까지는 설계였고,
이제부터는 협업자도 붙일 수 있는 구조화된 시스템으로 나아가야 합니다.

“코어는 클래스처럼 설계되었다면,
문서는 매뉴얼처럼 설계되어야 한다.”


필요하시면 이 포스트를 Markdown, PDF, 블로그 HTML 등으로 변환해드릴 수 있어요.
어떤 형식으로 드릴까요?