DOCS/journey/plans/archive/251225_admin_dashboard_code_refactoring.md
happybell80 452308ffbc docs: Admin Dashboard 코드 리팩토링 트러블슈팅 문서 작성 및 계획 문서 정리
- troubleshooting/251225_admin_dashboard_code_refactoring.md: 리팩토링 및 버그 수정 내용 기록
- plans/archive/251225_admin_dashboard_code_refactoring.md: 구현 완료된 계획 보관
- plans/251225_admin_dashboard_code_refactoring.md: 남은 작업만 정리
2025-12-25 23:54:22 +09:00

1.9 KiB

Admin Dashboard 코드 리팩토링 계획 (구현 완료)

날짜: 2025-12-25 목표: Monolithic 코드 분리 및 계층 구조 개선 원칙: 311_FastAPI_구조_원칙.md, 313_React_구조_원칙.md


현재 상태

Frontend 문제점

  • app.js: 1360줄 (1000줄 이상 - Monolithic Component)
  • UI + API + State + Events 모두 혼재
  • React 원칙 위반: 300줄 이상 분리 검토 필요, 1000줄 이상 리팩토링 필수

Backend 문제점

  • admin_routes.py: 1053줄 (300줄 초과)
  • FastAPI 원칙 위반: router 파일은 300줄 이하 권장
  • routers/users.py, routers/robeings.py는 이미 분리됨

리팩토링 계획

1. Frontend 구조 개선

목표 구조:

frontend/
├── app.js                 # 메인 로직만 (~200줄)
├── services/
│   └── api.js            # API 통신 로직
├── utils/
│   └── helpers.js        # 유틸리티 함수
└── modules/
    └── diary.js          # 일기 관리

2. Backend 구조 개선

목표 구조:

backend/
├── routers/
│   ├── system.py         # 시스템 모니터링
│   ├── admin_static.py   # 정적 파일 서빙
│   ├── users.py          # 사용자/팀 관리
│   └── robeings.py       # 로빙 관리
├── services/
│   └── system_service.py # 시스템 비즈니스 로직
└── admin_routes.py       # 인증만 (96줄)

구현 완료

→ 상세: troubleshooting/251225_admin_dashboard_code_refactoring.md

결과

  • app.js: 1360줄 → 1132줄 (228줄 감소)
  • admin_routes.py: 1053줄 → 96줄 (957줄 감소)
  • Frontend: 모듈화 완료 (services, utils, modules 분리)
  • Backend: 계층 분리 완료 (router → service)

참고

  • 311_FastAPI_구조_원칙.md
  • 313_React_구조_원칙.md
  • troubleshooting/251225_admin_dashboard_code_refactoring.md