Files
2nd/01_Archive/2026-04-20/Communication-Protocol-and-State-Management.md
T

1.4 KiB

📡 시스템 통신 프로토콜 및 상태 전이 관리 매뉴얼 (Protocols & State Flow)

📜 1. 표준화된 데이터 교환 규약 (Standardized Message Protocol)

  • 원칙: 모든 컴포넌트 간의 메시지는 반드시 다음 JSON 구조를 따라야 합니다. { type: 'ACTION_TYPE', payload: { data: value } }
  • 필수 정의 예시:
    • INIT: 시스템 초기화 요청 및 데이터 교환 시작 신호.
    • KEY_INPUT: 사용자 입력이 발생했을 때의 키 코드 전송.
    • UPDATE: 엔진에서 계산 완료 후, 새로운 상태(Board State)를 전달하는 신호.

🔄 2. 시스템 생명 주기 (Life Cycle Management)

시스템은 다음의 명확한 상태 흐름을 거쳐야 합니다:

  1. [Initialization]: 초기 설정 \rightarrow 엔진 시작 요청 (INIT 메시지 전송).
  2. [Active Loop]: 입력 감지 및 타이머 기반 루프 실행 (State Update & Redraw Cycle).
  3. [Termination]: 게임 오버, 다음 단계 진입 등 명확한 종료 신호 발생 시 모든 리소스를 정리(Cleanup)해야 합니다.

🚨 State Machine 필수 적용

시스템의 복잡도가 높아질수록 **상태 머신(State Machine)**을 도입하여, 현재 시스템이 어떤 상태에 있는지 (예: READY, RUNNING, PAUSED, GAME_OVER)를 명확히 정의하고 제어해야 합니다.