Design Pattern
![[GoF Design Patterns] Abstract Factory - 실제 사용 예제](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcpREqR%2FbtsJM17YjOO%2Fb6BWk8vbLwYZeKUEAoSgB1%2Fimg.png)
[GoF Design Patterns] Abstract Factory - 실제 사용 예제
Abstract Factory 패턴의 실제 사용 예제에 대해 알아봅시다.아래 개념 설명 글을 보고 오시면 더 쉽게 이해할 수 있습니다.https://littlemoom.tistory.com/58 [GoF Design Patterns] Abstract Factory* 예제 코드 및 설명에 필요한 개념들이 Swift를 기준으로 작성된 글입니다. 지난번의 Factory Method에 이어서 오늘은 Abstract Factory 패턴에 대해 알아보겠습니다.Abstract Factory 또한 Creational Patterns 중littlemoom.tistory.com * 편의를 위하여 예제의 Input Type을 String으로 통일하였습니다.* 정의되는 개념이 많아 개념 구조 이미지에서의 명칭을 함께 표기하였..
![[GoF Design Patterns] Abstract Factory](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcoMRUD%2FbtsJNuBV0cv%2Fy0T97UIN0YSpLoL55GMhZ0%2Fimg.png)
[GoF Design Patterns] Abstract Factory
* 예제 코드 및 설명에 필요한 개념들이 Swift를 기준으로 작성된 글입니다.지난번의 Factory Method에 이어서 오늘은 Abstract Factory 패턴에 대해 알아보겠습니다.Abstract Factory 또한 Creational Patterns 중 하나입니다.1. 설계 목적구체적인 특정 클래스를 지정하지 않고도 연관된 객체들의 모음을 생성할 수 있는 패턴입니다.??2. 문제 상황가구 매장 예시로 들어봅시다.제품군은 Chair, Sofa, CoffeeTable이며, 각 제품군 별로 Modern, Victorian, ArtDeco의 스타일이 존재합니다.이때 새로운 제품 객체를 생성하는데, 고객이 기존에 가진 스타일의 제품 객체를 생성하는 것이 중요합니다.새로운 제품군 혹은 스타일을 추가할 때마..
![[GoF Design Patterns] Factory Method](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcccMxl%2FbtsJJJAQdIj%2FVkMh16G17MEaJwZPCcS181%2Fimg.png)
[GoF Design Patterns] Factory Method
* 예제 코드 및 설명에 필요한 개념들이 Swift를 기준으로 작성된 글입니다. GoF 디자인 패턴 첫번째 키워드는 Creational Patterns 중 Factory Method 입니다.Creational Patterns으로는 Factory Method, Abstract Factory, Builder, Prototype, Singleton 이 있습니다.Creational Patterns은 코드의 유연성과 재사용성을 증가시키기 위한 객체 생성 패턴입니다.1. 설계 목적부모 클래스에서 객체를 생성하기 위한 인터페이스를 제공하지만, 자식 클래스에서 생성될 객체의 유형을 변경할 수 있도록 패턴입니다.역시 한 번에 이해가 되지 않습니다.2. 문제 상황이해를 위해 사이트에서 제공하는 문제 상황을 살펴봅시다.당신..
[Design Pattern] Intro
디자인 패턴이란? 디자인 패턴은 소프트웨어 디자인(설계)에서 일반적으로 발생하는 문제에 대한 일반적인 솔루션이다. 이는 코드에서 반복되는 디자인 문제를 해결하기 위해 사용자 지정할 수 있는 미리 만들어진 청사진과 같다. 라이브러리를 사용하는 것처럼 패턴을 프로그램에 복사할 수는 없다. 패턴은 특정 코드 조각이 아니라 특정 문제를 해결하기 위한 일반적인 개념이기 때문이다. 패턴 세부 사항을 따르고 자신의 프로그램에 맞는 솔루션을 구현해야한다. 패턴은 알고리즘과 혼동되는 경우가 많은데, 두 개념 모두 알려진 문제에 대한 일반적인 솔루션을 설명하는 개념이기 때문이다. 알고리즘은 항상 어떤 목표를 달성할 수 있는 명확한 일련의 작업을 정의하지만, 패턴은 솔루션보다 높은 수준의 개념이다. 두 개의 다른 프로그램에..