-
Notifications
You must be signed in to change notification settings - Fork 1
μν€ν μ² ποΈ
myungwoo edited this page May 22, 2025
·
2 revisions
MVI + MVVM, Clean Architecture ν¨ν΄μ μ¬μ©ν©λλ€.
lib/
βββ core/
β βββ routing/
β βββ ui/
β β βββ component/
β β β βββ input_field.dart
β β βββ style/
β β βββ app_colors.dart
β β βββ app_text_styles.dart
β βββ util/
β βββ string_helper.dart
β βββ ...
βββ auth/
β βββ login/
β βββ data/
β β βββ data_source/
β β βββ data_source_impl/
β β βββ repository_impl/
β β βββ mapper/
β β βββ dto/
β βββ domain/
β β βββ model/
β β βββ repository/
β β βββ usecase/
β βββ presentation/
β βββ login_action.dart
β βββ login_event.dart
β βββ login_screen.dart
β βββ login_screen_root.dart
β βββ login_state.dart
β βββ login_view_model.dart
- data: μΈλΆ λ°μ΄ν° μμ€μμ ν΅μ , DTO κ΄λ¦¬
- domain: λΉμ¦λμ€ λ‘μ§, λͺ¨λΈ, μ μ₯μ μΈν°νμ΄μ€, μ μ€μΌμ΄μ€
- presentation: UI μ»΄ν¬λνΈ, μν κ΄λ¦¬, μ¬μ©μ μ‘μ μ²λ¦¬
MVI(Model-View-Intent) ν¨ν΄μ λ¨λ°©ν₯ λ°μ΄ν° νλ¦μ ν΅ν΄ μμΈ‘ κ°λ₯ν μν κ΄λ¦¬λ₯Ό μ 곡ν©λλ€.
- μ±μ λ°μ΄ν°μ λΉμ¦λμ€ λ‘μ§μ ν¬ν¨
- μ°λ¦¬ μ±μμλ
State
ν΄λμ€κ° μ΄ μν λ΄λΉ
- UIλ₯Ό λ λλ§νκ³ μ¬μ©μ μ λ ₯μ μΊ‘μ²
-
[κΈ°λ₯λͺ ]_screen.dart
νμΌμ΄ λ΄λΉ
- μ¬μ©μ μλλ₯Ό λνλ΄λ μ‘μ
-
[κΈ°λ₯λͺ ]_action.dart
μ μ μ
User Action β Action β ViewModel β State λ³κ²½ β UI μ
λ°μ΄νΈ β User Action...
- μμΈ‘ κ°λ₯ν μν κ΄λ¦¬
- λλ²κΉ μ©μ΄μ±
- λ¨λ°©ν₯ λ°μ΄ν° νλ¦μΌλ‘ μ¬μ΄λ μ΄ννΈ μ΅μν
- ν μ€νΈ μ©μ΄μ±