CS/Design Pattern 2

[디자인 패턴] 팩토리 패턴

팩토리 패턴(Factory Pattern) 객체의 생성을 추상화하여 상속 관계에 있는 두 클래스에서 상위 클래스가 중요한 뼈대를 결정하고, 하위 클래스에서 객체 생성에 관한 구체적인 내용을 결정하는 패턴 장점 상위 클래스와 하위 클래스가 분리되기 때문에 의존성이 낮으며 상위 클래스에서는 인스턴스 생성 방식에 대해 알 필요가 없기 때문에 더 많은 유연성을 가짐 -> 하위 클래스의 인스턴스 생성 방식을 바꿔도 상위 클래스는 코드를 수정할 필요가 없음(알 필요 없음) 구현 예시 package DesignPattern; //Super Class인 Coffee abstract class Coffee { public abstract int getPrice(); @Override public String toStri..

CS/Design Pattern 2022.08.11

[디자인 패턴] 싱글톤 패턴

디자인 패턴 React.js, Spring과 같은 라이브러리나 프레임 워크의 기본이 되며, 프로그램을 설계할 때 발생했던 문제점들을 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 '규약' 형태로 만들어 놓은 것 싱글톤 패턴 (Singleton Pattern) 객체의 인스턴스가 오직 1개만 생성되는 패턴 보통 데이터베이스 연결 모듈에 많이 사용 왜 싱글톤 패턴을 사용할까? (장점) 1. 인스턴스 생성의 비용(메모리, 속도) 절감 고정된 메모리 영역을 사용하기 때문에 메모리 절감 (하나의 인스턴스를 만들어 놓고 해당 인스턴스를 다른 모듈들이 공유하며 사용하기 때문) 이미 생성된 인스턴스를 활용하기 때문에 속도 절감 2. 데이터 공유에 용이 하나의 인스턴스를 다른 모듈들이 공유하며 사용함 ex) 웹에 ..

CS/Design Pattern 2022.08.11