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 컴포넌트

 

 


 

여기서 수정할수도..아닐수도..