Architecture, Design Pattern(13)
-
[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 -
[Design Pattern] 내가 보려고 정리하는 Swift 디자인 패턴 (8) - 어댑터 패턴(Adapter Pattern)
1️⃣ 어댑터 패턴(Adapter Pattern)이 뭐야?💡 어댑터 패턴(Adapter Pattern)은 서로 호환되지 않던 인터페이스(protocol)를 변환시켜 함께 작동할 수 있도록 만드는 구조 패턴(Structural Pattern)이다.위의 말이 무슨 말인지 잘 이해가 안된다면 아래와 같이 이해해 보는 건 어떨까?기존에 사용하고 있던 규격이 이미 있는 상황에서, 새롭게 사용하려는 시스템의 규격이 기존 규격과 맞지 않는다면? -> 어댑터(Adapter)라는 변환 도구를 중간에 두어 기존 규격과 새로운 규격을 함께 사용할 수 있도록 만드는 것이 바로 어댑터 패턴이다.어댑터 패턴에서 반복적으로 사용하는 용어는 아래 네 가지다.Target (Interface = Protocol) : 기존 시스템이 사..
2024.08.05 -
[iOS] Clean Architecture + MVVM + Observable 사용해서 날씨앱 리팩토링하기
⚠️ 해당 글은 Robert C. Martin의 너무도 유명한 책과 Oleh Kudinov라는 분의 Medium 글 Clean Architecture and MVVM on iOS를 참고해서 작성했습니다.번역 또는 프로젝트의 목적, 그리고 저의 부족한 이해력 때문에 일부 잘못된 내용이 있을 수 있다는 점. 전제하고 읽어주시면 감사하겠습니다 (잘못된 개념 제보 및 질문 댓글로 얼마든지 환영입니다:) ^__^ + 아 그리고 글이 조금 깁니다...어쩌다보니.. GitHub - mini-min/Clean-Architecture-iOS: 🍎 날씨앱 클론코딩으로 공부하는 클린 아키텍처 (feat. Robert C. Ma🍎 날씨앱 클론코딩으로 공부하는 클린 아키텍처 (feat. Robert C. Martin) - ..
2024.07.28 -
[Design Pattern] 내가 보려고 정리하는 Swift 디자인 패턴 (7) - 코디네이터 패턴(Coordinator Pattern)
1️⃣ 코디네이터 패턴 (Coordinator Pattern) 왜 (Why?) 쓰는 거야?예전 MVC 글에서도 다룬 적이 있지만, 기본적으로 iOS 개발에서 사용되는 아키텍처의 대표적인 문제는 Massive ViewController, 즉 View와 Controller를 합쳐서 사용하는 ViewController의 책임과 역할이 너무 많다는 것이었다.👇🏻 MVC Pattern 글을 리마인드하고 싶으면, 아래 글을 확인할 것! [Architecture Pattern] 내가 보려고 정리하는 Swift 아키텍처 패턴 (1) - MVC 패턴 (Model-View-Controller)💡 글을 시작하기 전에, 아키텍처 패턴 (Architecture Pattern)이 무엇인지 설명하고 넘어가자면!아키텍처 패턴은..
2024.07.04