Swift Architecture(17)
-
[iOS] 중재자 패턴 (Mediator Pattern)을 활용한 우리 팀만의 아키텍처가 만들어진 과정 (feat. View-Model-Service)
0. 들어가기에 앞서MV, MVC, MVVM, TCA, VIPER, Clean Architecture 등등 iOS 개발에 사용될 수 있는 아키텍처 패턴은 정말 많습니다.하지만 중요한 것은 "어떤 아키텍처를 사용해봤냐?"가 아니라 "왜 그 아키텍처를 선택했냐?"에 대한 대답입니다.소프트웨어에서 사용하는 패턴 (디자인 패턴, 아키텍처 패턴 포함)은 모두 특정한 문제를 해결해주기 위한 방법임에는 틀림없지만, 현 프로젝트의 볼륨이나 방향에 따라 때로는 오히려 코드를 복잡하고 / 진입 장벽을 높게만 만들 수 있기 때문입니다.즉, 아키텍처 사용에는 이유가 필요하다는 것입니다.그 이유에는 현재 프로젝트의 규모, 동료 개발자들의 역량, 개발기간과 이후 유지보수 가능성 등이 종합적으로 고려되어야 하죠.예를 들어, 작은 ..
2025.08.25 -
[Swift] 당신이 싱글톤 (Singleton)을 사용하기 전에 반드시 알아야 하는 것들
💡 싱글톤 패턴(Singleton Pattern)은 앱에서 전역적 (global)으로 접근 가능한 하나의 "공유 클래스 인스턴스 (shared instance of a class)"를 만들어 사용하도록 하는 디자인 패턴이다.예전 제 글 중, Swift 디자인 패턴 중 싱글톤 패턴 (Singleton Pattern)에 대해 설명했던 내용이 있었습니다.아래에 첨부되어 있는 글의 내용은 타입 프로퍼티 (static 키워드)부터 시작해 실제 싱글톤 패턴을 Swift 코드로 구현하는 방법, 그리고 싱글톤의 가벼운 장단점과, Apple이 채택하고 있는 싱글톤의 사례 (UserDefaults.standard, Notification.default 등등)까지 알아봤었죠. ✔️ 싱글톤 패턴이 무엇인지 아직 개념에 대한..
2025.06.05 -
[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