신입들은 “디자인 패턴” 이라는 말만 들어도 무서워합니다.무섭다.하지만, 모두 알고 있죠. “A better Programmer” 라면, 디자인패턴은 필수 지식이라는 사실이요.그래서 이 책을 읽는 것이고, 제 글을 읽으시는 거겠죠?프로그래밍을 하다보면, 많은 버그들 혹
디자인 패턴을 이해하기 위해서 좋은 도구인 “클래스 다이어그램 (Class diagram)” 에 대해서 간략히 알아보겠습니다.클래스 다이어그램은 “엔지니어링 기획도(혹은 청사진)” 라고 보시면 됩니다.그 청사진을 화살표와 도형 그리고 특정한 표시를 통해서 나타낼 뿐이죠
(이미지 출처: Uno's hand)MVC 패턴은 3 가지 타입으로 나눈 패턴입니다.1\. Model2\. Controller3\. ViewMVC를 클래스 다이어그램으로 표현하면 다음과 같죠.Model은 애플리케이션의 데이터를 담고 있습니다. 보통 “구조체(struct
델리게이션의 뜻을 번역하면 다음과 같이 번역합니다.Delegation : 대표단, 파견단Google 번역 -결론먼저 말씀드리면, delegation Pattern 은 하나의 객체가 다른 객체를 도와줍니다. 데이터를 전달해주든 특정 task를 수행해주든 하는 방식으로요.
Strategy pattern(이하 전략패턴) 은 런타임 중에 교채가 가능한 교체가능한 객체들의 집합이다.이게 무슨 말이냐…클래스 다이어그램을 먼저 보겠습니다.각 box에 대해서 알아보겠습니다.전략이라고 하니 뭔가 의미가 와닿지 않으실 것 같아 좀더 설명드리겠습니다.전
싱글톤 패턴이란, 특정 객체를 메모리에 한 번만 할당하여(Static) 생성된 객체를 앱 어디에서든 참조할 수 있도록 하는 디자인패턴을 의미합니다.싱글톤 패턴은 인스턴스가 1 개만 생성됩니다. 즉, 필요할 때마다 새롭게 인스턴스가 생성되어 메모리를 잡아먹는 것이 아닙니
메멘토?단어 자체가 익숙하지 않습니다.메멘토(Memento)는 기억의 증표를 말한다 - 위키백과 -비슷한 단어로 “메멘토 모리” 라는 단어가 있습니다.그 단어의 뜻은 “너는 반드시 죽는다는 것을 기억해라.” 라는 뜻이라고 합니다.메멘토는 무언가 “기억” 하는 행위와 관
“옵저버” = “관찰자”옵저버 패턴은 객체의 상태변화를 관찰자들을 특정 객체에 등록하여 특정 객체의 상태변화가 있을 때마다 관찰자들에게 알려주는 디자인 패턴입니다.Swift 5.1 부터 Combine 에서 Publisher를 추가하여 이 개념을 Language-leve
Builder.? 건축자?빌더 패턴 (Builder Pattern) 이란, 초기화를 통한 input 데이터를 요청하는 대신에 input 값을 하나씩 제공하므로서 복잡한 객체를 구성하도록 해주는 패턴입니다.이게 뭔말이지?클래스 다이어그램을 먼저 보겠습니다.Director
MVVM 패턴.M(Model) - V(View) - VM(ViewModel) 로 구성된 아키텍처 패턴으로 비즈니스로직과 프리젠테이션 로직을 UI로 부터 분리한 패턴입니다.클래스 다이어그램을 보겠습니다.Models 는 앱의 데이터입니다. 보통 struct나 간단한 cl