Clean Architecture
-
[iOS] Coordinator with Clean Architecture DiContaineriOS 2025. 3. 6. 15:44
저번에 Tuist로 clean architecture를 적용시키다가 coordinator에 대해 미숙한채로 적용하다 보니 따로 공부 하기 위해 여기 작성해본다. 우선 coordinator는 직역하자면 조정하다 뭐 이런 뜻이고 화면 이동에 관한 것들을 관리하는 디자인 패턴이다.ViewController에서 Push나 Pop을 해주면 ViewController자체에서 하는일이 너무 많아 지고 그것은 결국 전체적인 코드 파악에 영향을 준다. 우선 먼저 Coordinator에 기본적인 부분부터 예시를 따라해보겠다.Coordinator를 여러가지로 살펴보다 보니 Delegate와 거의 동일 했다 ViewController에서는 Coordinator로 이벤트 전달하고 Coordinator는 다시 전체 AppCoor..
-
Tuist Clean Architecture 적용기 - 2iOS 2025. 2. 25. 15:03
저번 게시물에서 Tuist의 기초에 대해 다뤘다면 지금은 그걸 토대로 Clean Architecture를 적용하는 과정동안 고민하면서 적용 시켰던 과정을 끄적여 보겠습니다. 우선 간단하게 Clean Architecture는 시스템을 계층화 하여 보수성과 확장성을 높이는것을 목표로 하고 의존성 역전 원칙을 중심으로 비즈니스 로직을 외부 프레임 워크나 UI로 부터 독립적으로 유지하는 것입니다. 독립적, 보수성, 확장성이 Tuist와 잘 어울릴거 같습니다. 우선 제가 생각한 구조는 위 그림과 같습니다.Clean Architecture에서는 Domain Layer는 Data Layer와 Presentation Layer만 보고 있어야 하고 Domain은 어떠한 의존성도 가지고 있으면 안됩니다. 또한 의존성 주입..
-
Tuist Clean Architecture 적용기 - 1iOS 2025. 2. 24. 15:34
어느날 회사 프로젝트의 리빌드의 베이스 작업을 맡게 되어서 Tuist에 Clean Architecture을 적용해보기로 생각했다.일단 Tuist가 뭔지 정확히 몰라 이것저것 둘러 보면서 공부하고 내용을 끄적여 본다. Tuist란? Xcode 프로젝트를 관리 할 수 있는 툴 장점- 모듈화를 통해 의존성을 낮추고 재활용성을 높임- 유지보수가 쉬워짐- 빌드속도가 향상됨 단점- 프로젝트 초기 설정에 시간이 오래걸림- CocoaPod을 지원하지 않음 저는 Tuist 4.21.0을 사용했고 Tuist는 버전에 따라 바뀌는 내용이 많은것 같아서..버전 타겟팅이 중요해 보인다.Tuist 설치과정은 생략.. 먼저 설치하고 Tuist 프로젝트를 만들고 싶은 폴더를 만들어 터미널로 해당 폴더 위치로 이동한다. tuist ..