본문 바로가기

분류 전체보기

(10)
[디자인 패턴의 정석] 생성패턴 - 팩토리 메서드 패턴 (Factory Method) 개발자 yeah의 Developer Story - 디자인 패턴 오늘은 저번 포스팅에 이어서 팩토리 패턴의 확장 패턴인 팩토리 메서드 패턴을 이야기해보려 합니다. 팩토리 메서드 패턴은 추상화 기법을 사용하여 패턴을 확장하므로, 쉽게 이해하기 위해서는 객체지향의 추상화 개념이 필수입니다! 따라서 추상화, 다형성, 상속 에 대한 이해가 부족하시다면 선행 공부를 꼭 하시고 해당 포스팅을 보시길 바래요 ^^ 먼저 팩토리 패턴에서 활용했던 객체들의 관계를 먼저 설명하겠습니다. /* 마피아 게임에서 사용자를 나타내는 class */ abstract class User { String name; //사용자 이름 String skill; //스킬 User(String name) { this.name = name; } S..
[디자인 패턴의 정석] 생성패턴 - 팩토리 패턴 (Factory) 개발자 yeah의 Developer Story - 디자인 패턴 오늘은 디자인 패턴에서 생성패턴의 한 종류인 팩토리 패턴을 이야기해보려 합니다. 팩토리 패턴의 설명에 앞서 생성패턴이란? 큰 규모의 응용 프로그램을 객체지향 개발 방식으로 설계할 때는 수많은 객체가 필요하게 되는데요. 이때 직접 객체를 생성하고 관계를 설정하면 매우 강력한 결합 관계를 갖게 됩니다. 이때의 관계를 종속 관계라고 하는데요. 이러한 종속 관계는 객체의 확장과 유지보수를 어렵게 하는 원인이 돼요. 생성 패턴은 객체 간 강력한 관계를 느슨한 결합으로 변경하는 기법입니다. 팩토리 패턴 은 생성패턴 중에서도 가장 기본이 되는 패턴이며, 클래스의 객체 생성 처리를 위임합니다. 예를 들어 다음 코드를 살펴보겠습니다. /* 마피아 게임에서 사..