본문 바로가기
1 - iOS

[iOS/Swift] SwiftUI에 적용하는 Clean Architecture

by seonshine-bibi 2022. 3. 29.
반응형

Swift에서 프론트를 개발한다면, UIKit과 SwiftUI 라는 갈림길에 놓이게 된다.

 

UIKit은 명령형, 이벤트 중심의 프레임워크

SwiftUI는 선언적, 상태 중심의 프레임워크

 

SwiftUI는 MVVM architecture가 내재되어 있다.

SwiftUI에서 Clean Architecture를 적용하는 방법에 대해 공부해보자.

https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html

 

Clean Coder Blog

The Clean Architecture 13 August 2012 Over the last several years we’ve seen a whole range of ideas regarding the architecture of systems. These include: Though these architectures all vary somewhat in their details, they are very similar. They all have

blog.cleancoder.com

 

 

어플리케이션 개발을 크게 나눠본다면 3개의 레이어로 나눌 수 있다.

 

  • Presentation layer
  • Business Logic layer
  • Data Access layer

 

SwiftUI에 요구사항을 적용시킨다면 아래의 그림과 같다.

 

AppState는 ObservedObject 이다.

View는 Struct 타입, UI 이다.

Interactor는 특정 view를 위한 비즈니스 로직을 캡슐화, AppState를 참조한다.

Repository는 데이터를 읽고 쓰는 추상적 게이트웨이이다. (Repository는 웹 서버 또는 로컬 디비에 대해 단일 데이터 액세스 접근을 제공한다.)

 

https://devming.medium.com/repository-pattern%EC%97%90-%EB%8C%80%ED%95%B4%EC%84%9C-255731577927

 

Repository Pattern에 대해서

본 글은 Repository Pattern in Swift을 해석 및 재해석 했습니다.

devming.medium.com

 

반응형