Design Pattern22 2. 팩토리 메서드 패턴(Factory Method Pattern) 팩토리 메서드 패턴 특정 인스턴스를 생성하는 책임을 구체적인 클래스가 아닌, 추상적인 인터페이스의 메서드로 감싸는 것. 왜? 예를 들어 어떤 회사가 A라는 자동차를 만들어서 제품을 판매하는데, 장사가 잘 되서 B라는 자동차도 만들어서 판매해보려 한다. 그렇다면 이미 존재하는 A자동차를 만드는 클래스 안에, if-else문이 추가 되면서 새로운 기능과 디자인을 추가한 B자동차를 만드는 로직이 추가될 것이다. 이렇게 하나하나 추가하다 보면 코드가 지저분해질 것이다. 이러한 클래스는 concrete클래스라고 하는데, 이러한 concrete클래스에 모두 담아두지 말고, 추상화된 클래스에 담아둔다. (추상 클래스에 담아둔다고는 했지만, 자바8부터는 인터페이스에 기본 메서드를 정의할 수 있기 때문에 추상화된 인터페.. 2021. 11. 4. 1. 싱글톤 패턴 (Singleton Pattern) 싱글톤 패턴은 하나의 인스턴스만을 생성하는 패턴이다. 일번적인 객체들은 Class를 정의했다면 new를 사용하여 얼마든지 수많은 객체를 생성해낼 수 있다. 하지만 싱글톤 패턴은 인스턴스를 하나만 생성하도록 하는 것이다. 게임 설정을 예로 들어보자. 게임을 시작하기 전에 Setting에 들어가서 소리를 높이거나 줄이거나 키를 변경하거나 할 수 있다. 또한 게임이 시작되고 나서도 Setting에 들어가서 소리를 높이거나 줄이는 등의 여러가지 설정을 다룰 수 있어야 한다. 게임을 하기 전에 volume을 30으로 맞춰두었는데, 게임을 시작하니까 volume이 30이 아니여서 다시 설정해야한다면? 이는 매우 불편할 것이다. 하여 Setting을 위한 인스턴스는 하나만 생성되어 어플리케이션 내에서 공유되도록 하고.. 2021. 10. 30. 이전 1 ··· 3 4 5 6 다음