🧱 CS/Design Pattern
[Design Pattern] 2. Adapter Pattern
https://github.com/Jaekeun-Lee/TIL/tree/master/design-patterns/adapter Adapter Pattern **Structural Pattern** 프로그램 구조에 관련된 패턴들 프로그램 내의 자료구조나 인터페이스 구조 등 프로그램의 구조를 설계하는데 활용할 수 있는 패턴들 어댑터 패턴이란? 한 클래스의 인터페이스를 클라이언트에서 사용하고자하는 다른 인터페이스로 변환한다. 어댑터를 이용하면 인터페이스 호환성 문제 때문에 같이 쓸 수 없는 클래스들을 연결해서 쓸 수 있다. 어댑터 패턴 호출 과정 클라이언트에서는 Target Interface 를 호출하는 것 처럼 보인다. 하지만 클라이언트의 요청을 전달받은 (Target Interface 를 구현한) Adap..
[Design Pattern] 1. Singleton Pattern
https://github.com/Jaekeun-Lee/TIL/tree/master/design-patterns/singleton Singleton Pattern **Creational Pattern** 객체를 생성하는데 관련된 패턴들 객체가 생성되는 과정의 유연성을 높이고 코드의 유지를 쉽게 함 싱글톤 패턴이란? 전역 변수를 사용하지 않고 객체를 하나만 생성하도록 하며, 생성된 객체를 어디에서든지 참조할 수 있도록 하는 패턴 싱글턴 패턴은 인스턴스가 오직 1개만 생성되야 하는 경우에 사용되는 패턴. 예를들어 레지스트리 같은 설정 파일의 경우 객체가 여러개 생성되면 설정 값이 변경될 위험이 생길 수 있다. 인스턴스가 1개만 생성되는 특징을 가진 싱글턴 패턴을 이용하면, 하나의 인스턴스를 메모리에 등록해서..
[Design Pattern] 1. Singleton Pattern
싱글톤 패턴(Singleton Pattern) " 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체(인스턴스)는 하나이고, 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체(인스턴스)를 리턴한다. " 객체(인스턴스)는 항상 하나만 생성된다. 정의 하나의 객체만 생성하고 사용해야 할 때, 적용할 수 있는 패턴이다. 만들어진 하나의 객체는 전역변수처럼 어디에서든지 참조할 수 있도록 하는 패턴이다. 역할 하나의 객체만을 생성하는 책임이 있으며 getInstance() 메소드를 통해 모든 클라이언트에게 동일한 객체를 반환하는 작업을 수행한다. 결과 오직 하나의 객체만을 보장한다. 전역 객체로써, 어디서든 접근이 가능하다. public final class Singleton { priv..