front-end
flutter 프로젝트 구조
kimkim615
2025. 2. 8. 00:42
클린 아키텍처 원칙 기반 구조
assets
앱에서 사용하는 정적 리소스(이미지,폰트) 저장
하위 폴더
fonts : 폰트 파일
images : 이미지 리소스
config
앱 전역 설정 및 환경 변수 관리
core
앱 전반에서 사용하는 공통 유틸리티, 설정 관리
하위 폴더
constants : 앱에서 사용하는 상수값 (API URL, key값)
exceptions : 커스텀 예외 클래스 및 오류 처리 로직
data
앱의 데이터 계층 관리, 외부 데이터(API, 로컬 저장소)와의 상호작용 처리
하위 폴더
models : dto 또는 json 응답을 dart 객체로 매핑하는 클래스 모음
repositories : Use Case에서 사용 되는 데이터 요청 처리(Save, Load, Update, Delete)가 구현되고 Data Source를 통해 서버와 통신
sources : 실제 데이터 가져옴 (REST API 요청, 로컬 DB)
domain
비즈니스 로직과 규칙 정의함, UI나 데이터 계층에 의존하지 않음
하위 폴더
entities : 앱 내에서 사용 되는 데이터 정의 담당 (실제 데이터)
usecases : Repository를 통해 입력에 대한 결과물을 받아 처리 하는 비즈니스 로직을 담당 (하지만 실제 구현체는 Data 계층에 있음)
UI
앱의 사용자 인터페이스 계층, 화면과 위젯 정의
하위 폴더
screens : 개별 화면 구성 클래스
widgets : 재사용 가능한 UI 컴포넌트
여기서 수정할수도..아닐수도..