pattern 2 Singleton Pattern 인스턴스가 오직 1개만 생성되야 하는 경우에 사용되는 패턴입니다. 시스템 런타임, 환경 세팅에 대한 정보 등 인스턴스가 여러개일 때 문제가 생길 수 있는 상황에서 싱글턴 패턴을 사용합니다. 인스턴스가 1개만 생성되는 특징을 가진 싱글턴 패턴을 이용하면 하나의 인스턴스를 메모리에 등록해서 여러 스레드가 동시에 해당 인스턴스를 공유하여 사용하게끔 할 수 있으므로 요청이 많은 곳에서 사용하면 효율을 높일 수 있습니다. 싱글턴을 만들때 동시성(Concurrency) 문제를 고려해서 싱글턴을 설계해야합니다. 싱글턴을 사용하는 방법과 문제점을 알아보고 해결방법을 알아보겠습니다. 1. Eager Initialization public class SingletonEagerInit { private static Sing.. Computer Science/Design Pattern 2022. 1. 15. [Design Pattern] Template Method Pattern 상속을 통해 슈퍼클래스의 기능을 확장할 때 사용하는 가장 대표적인 방법입니다. 변하지 않는 기능은 슈퍼클래스에 만들어두고 자주 변경되며 확장할 기능은 서브클래스에서 만들도록 합니다. 알고리즘의 구조를 정의하고, 하위 클래스에서 알고리즘 구조의 변경없이 알고리즘을 재정의 하는 패턴입니다. 쉽게 말해 전체 구조는 바꾸지 않으면서 특정 단계를 수행하는 내역을 바꾸는 패턴입니다. 상속 관계(Is-a)를 이용합니다. 장점은 중복 코드를 줄일 수 있지만, 단점으로 추상 메소드가 많아지면서 클래스 관리가 복잡해지고 또 확장구조가 이미 클래스를 설계하는 시점에서 고정되어 관계에 대한 유연성이 떨어집니다. Abstract public abstract class Abstract { public void superMetho.. Computer Science/Design Pattern 2021. 8. 3. 이전 1 다음