Swift Architecture(16)
-
[iOS] 중재자 패턴 (Mediator Pattern)을 활용한 우리 팀만의 아키텍처가 만들어진 과정 (feat. View-Model-Service)
0. 들어가기에 앞서MV, MVC, MVVM, TCA, VIPER, Clean Architecture 등등 iOS 개발에 사용될 수 있는 아키텍처 패턴은 정말 많습니다.하지만 중요한 것은 "어떤 아키텍처를 사용해봤냐?"가 아니라 "왜 그 아키텍처를 선택했냐?"에 대한 대답입니다.소프트웨어에서 사용하는 패턴 (디자인 패턴, 아키텍처 패턴 포함)은 모두 특정한 문제를 해결해주기 위한 방법임에는 틀림없지만, 현 프로젝트의 볼륨이나 방향에 따라 때로는 오히려 코드를 복잡하고 / 진입 장벽을 높게만 만들 수 있기 때문입니다.즉, 아키텍처 사용에는 이유가 필요하다는 것입니다.그 이유에는 현재 프로젝트의 규모, 동료 개발자들의 역량, 개발기간과 이후 유지보수 가능성 등이 종합적으로 고려되어야 하죠.예를 들어, 작은 ..
2025.08.25 -
[iOS] 내가 보려고 정리하는 TCA (The Composable Architecture) 기초
오늘 글은 SwiftUI 환경에 적합한 아키텍처, TCA (The Composable Architecture)의 기초 개념을 소개하는 내용입니다.이 글에서 TCA가 어떤 특징과 장점을 갖고 있고, 어떤 코드 구조로 Apple Platform의 소프트웨어를 설계하게 되는지를 최대한 쉽게 여러분들께 설명하고자 합니다!오늘 살펴본 기초 개념을 토대로, 다음 글에서는 실제 SwiftUI 프로젝트에서 The Composable Architecture를 적용하는 리팩토링 설명까지 이어가보도록 할게요☺️ TCA (The Composable Architecture)란?1️⃣ TCA는 오픈소스 아키텍처 라이브러리다.TCA는 The Composable Architecture의 줄임말로,Brandon Williams와 St..
2025.03.05 -
[Swift] Coordinator & Router & Factory Pattern을 사용한 리팩토링 (2) : 코디네이터로 탭바 만들기
[Swift] Coordinator & Router & Factory Pattern을 사용한 리팩토링 (1) : 초기 세팅부터 로그인 화면까지💡 해당 글은 Coordinator Pattern, Router, Factory Method Pattern을 사용한 리팩토링 코드를 설명하는 글입니다!글이 너무 길어져 총 3개로 나누어 글을 올릴 예정이구요, 만약 잘못된 개념이나 개선할 부분mini-min-dev.tistory.com💡 해당 글은 Coordinator Pattern, Router, Factory Method Pattern을 사용한 리팩토링 코드를 설명하는 글입니다!글이 너무 길어져 총 3개로 나누어 글을 올릴 예정이고요, 만약 잘못된 개념이나 개선할 부분, 질문 등이 있다면 댓글로 지적해 주시면..
2025.01.20 -
[Swift] Coordinator & Router & Factory Pattern을 사용한 리팩토링 (1) : 초기 세팅부터 로그인 화면까지
💡 해당 글은 Coordinator Pattern, Router, Factory Method Pattern을 사용한 리팩토링 코드를 설명하는 글입니다!글이 너무 길어져 총 3개로 나누어 글을 올릴 예정이구요, 만약 잘못된 개념이나 개선할 부분, 질문 등이 있다면 댓글로 지적해주시면 빠르게 남겨드리도록 하겠습니다 ^__^1️⃣ Coordinator & Router & Factory Pattern을 사용한 리팩토링 (1) : 초기 세팅부터 로그인 화면까지2️⃣ Coordinator & Router & Factory Pattern을 사용한 리팩토링 (2) :코디네이터로 탭바 만들기3️⃣ Coordinator & Router & Factory Pattern을 사용한 리팩토링 (3) : 앱 전체 흐름 구성, ..
2025.01.17 -
[Design Pattern] 내가 보려고 정리하는 Swift 디자인 패턴 (9) - 데코레이터 패턴(Decorator Pattern)
1️⃣ 데코레이터 패턴(Decorator Pattern) 왜(Why) 쓰는 거야?💡 데코레이터 패턴(Decorator Pattern)은 객체에 새로운 기능을 동적으로 추가할 수 있게 해주는 구조 패턴(Structural Pattern)이다.객체에 새로운 기능을 동적으로 추가하기 위해 쓴다고...?이미 Swift에서 기능을 추가하는 방법으로 (1) 기존 클래스에서 "상속"을 받아 하위 클래스로 구현하거나, (2) Extension으로 기능을 "확장"시킬 수 있는데 굳이 이 디자인 패턴을 쓰면서까지 기능을 추가할 필요가 있을까..? 하는 것이 나의 첫 생각이었다.하지만, 데코레이터 패턴(Decorator Pattern)을 사용했을 때 상속과 확장에 비해 확연하게 구분되어 얻을 수 있는 장점이 있었다.아직 ..
2024.08.22