mirror of
https://github.com/sotam0316/brain_dogfood.git
synced 2026-04-24 19:48:35 +09:00
1.8 KiB
1.8 KiB
프로젝트 추가 모듈화 및 리팩토링 계획
memo.py 모듈화 이후, 코드 품질 향상 및 유지보수성 확보를 위해 추가적으로 개선이 필요한 영역을 분석한 결과입니다.
📋 추가 모듈화 검토 대상 리스트
| 대상 영역 | 파일 위치 | 현재 상태 (Lines) | 문제점 및 개선 방향 | 우선순위 |
|---|---|---|---|---|
| 백엔드 코어 | app/__init__.py |
121 lines | create_app 함수에 보안, 로깅, CSP 설정이 집중됨. app/core/로 분리 필요. |
높음 |
| 프론트엔드 UI | static/js/ui.js |
331 lines | 모든 UI 이벤트 및 렌더링이 집중된 God Object. 레이아웃과 렌더링 로직 분리 필요. | 높음 |
| DB 스키마 | app/database.py |
88 lines | 연결 로직과 테이블 정의가 혼재됨. SQL 파일이나 전용 클래스로 스키마 관리 분리. | 보통 |
| 명령어 엔진 | static/js/components/SlashCommand.js |
352 lines | 명령어 데이터와 UI 제어 로직이 섞여 있음. 데이터 중심 구조로 개편 필요. | 보통 |
| 파일 서비스 | app/routes/file.py |
162 lines | memo.py처럼 Route에 로직이 포함됨. FileService 계층 신설 고려. |
보통 |
| 에디터 관리 | static/js/editor.js |
215 lines | Toast UI 설정과 커스텀 기능이 얽혀 있음. 플러그인 인터페이스 도입 필요. | 낮음 |
🛠️ 향후 작업 권고 단계
- 1단계 (Core):
app/__init__.py에서 로깅 및 보안 설정을 분리하여 서버 초기화 가독성 확보. - 2단계 (UI):
ui.js를layout.js와memos.js등으로 분리하여 프론트엔드 관리 효율화. - 3단계 (Data):
database.py내의 하드코딩된 스키마를 모델 정의 파일로 이동.
작성일: 2026-04-20