본문 바로가기

🖥️ Computer Science/Design Pattern2

[디자인 패턴] 팩토리 패턴 (Factory Pattern) 팩토리 메서드 패턴 (Factory Method Pattern) 객체를 생성하기 위한 인터페이스를 정의하는데, 어떤 클래스의 인스턴스를 만들지는 서브 클래스에서 결정하게 만드는 패턴 클래스의 인스턴스를 만드는 일을 서브클래스에게 맡기는 것 부모 추상 클래스는 인터페이스에만 의존하고 실제로 어떤 구현 클래스를 호출할지는 서브 클래스에서 구현 새로운 구현 클래스가 추가되어도 기존 Factory 코드의 수정 없이 새로운 Factory를 추가 가능 객체의 생성을 담당하는 클래스를 한 곳에서 관리하여 결합도를 줄이기 위하여 팩토리 패턴이 등장 결합도: 한 클래스에 변경점이 얼마나 다른 클래스에 영향을 주는가를 의미 팩토리 메서드 패턴의 장점 객체 간의 결합도를 낮출 수 있음 단일 책임 원칙을 따름 프로그램의 코드.. 2023. 3. 17.
[디자인 패턴] 싱글톤 패턴 (Singleton Pattern) 싱글톤 패턴 (Singleton Pattern) 하나의 클래스에 오직 하나의 인스턴스 만 가지는 패턴 데이터베이스 연결 모듈에 많이 사용 하나의 인스턴스를 만들어 놓고 해당 인스턴스를 다른 모듈들이 공유하며 사용 인스턴스 생성 비용이 줄어듦 동시성(Concurrency) 문제를 고려해야 함 싱글톤 패턴을 사용하는 이유 최초 한 번만 인스턴스를 생성하여 고정된 메모리 영역을 사용하기 때문에, 메모리 낭비 방지 이미 생성된 인스턴스를 활용해 속도가 빠름 싱글통 인스턴스가 전역으로 사용되기 때문에, 다른 클래스 간에 데이터 공유가 쉬움 인스턴스가 절대적으로 한 개만 존재하는 것을 보증하고 싶은 경우에 사용 싱글톤 패턴의 단점 싱글톤 인스턴스가 혼자 너무 많은 일을 하거나, 많은 데이터를 공유시킬 경우에 다른 .. 2023. 3. 16.
반응형