설계/디자인 패턴

설계/디자인 패턴

[디자인패턴] 생성 패턴 : 추상 팩토리 패턴

생성 - 추상 팩토리 패턴추상 팩토리연관된 여러 객체들을 일관된 방식으로 생성할 때 사용하는 패턴추상 팩토리의 다른 이름은 키트(Kit)이다. 테마 별로 각 구현체 집합을 생성할 수 있다.팩토리 메서드 패턴은 단일 제품(Only one)을 생성하지만, 추상 팩토리 패턴은 여러 제품군을 생성한다. 생성 방법각 제품의 인터페이스를 정의한다.interface Chair { void sitOn();}interface Sofa { void lieOn();}interface CoffeeTable { void putCoffee();}제품들을 생성할 추상 팩토리를 생성한다.생성할 각 제품들의 인터페이스를 참조한다.interface FurnitureFactory { Chair createChair(..

설계/디자인 패턴

[디자인패턴] 생성 패턴 : 팩토리 메서드 패턴

생성 패턴 : 팩토리 메서드 패턴팩토리 메서드 패턴이란?생성과 구현의 분리객체 생성을 위한 인터페이스(or 상위 클래스)를 정의하고, 실제 어떤 클래스가 생성될지는 구현 클래스(or 하위 클래스)가 결정한다.어떤 구현 객체가 실제 생성되었는지 Client는 알지 못한다. (결합도가 낮다.) 팩토리 메서드 패턴이 필요한 이유모든 코드가 특정 객체에 결합도가 높게 작성되었다면, 다른 객체가 해당 객체를 대체하거나 새로운 객체를 포함할 때 많은 코드를 변경해야 한다.공통 로직마다 구현체별로 분기 처리가 필요하다.팩토리 메서드 패턴을 이용하면 Client는 인터페이스만 참조하고 특정 구현체에 종속되어있지 않으므로 확장성이 커진다.새로운 객체가 추가되거나 대체되더라도 인터페이스가 변하지 않는 이상 다른 코드에 영..

설계/디자인 패턴

[디자인 패턴] 디자인 패턴이란?

디자인 패턴디자인 패턴이란?소프트웨어 설계에서 일반적으로 발생하는 문제에 대한 일반적인 솔루션여러 문제들이 공통된 원인에 의한 것이라면, 패턴을 이용하여 같은 구조로 문제를 해결할 수 있다.ex) 관찰자 패턴을 이용하여 알림이 필요한 모든 상황에 적용하기 단순 개념(blueprint)이며, 고정된 특정 코드가 아니다.한 패턴에 여러 다양한 구현체가 존재할 수 있다.결과와 기능은 정해져있지만, 구현 순서와 방법은 다를 수 있다. 디자인 패턴을 공부하는 것의 장점소프트웨어 설계에서 문제가 발생했을 때 디자인 패턴을 이용해 해결할 수 있다.팀원과 의사소통할 때 디자인 패턴 개념을 공유하면 효율적으로 의사소통할 수 있다. 디자인 패턴을 적용할 때 주의할 부분"프로그램 맥락을 고려하지 않고 패턴을 일반적으로 적용..

mint*
'설계/디자인 패턴' 카테고리의 글 목록