반응형 IT 개인 공부/디자인패턴21 어댑터 패턴(Adapter Pattern) 어댑터 패턴(Adapter Pattern)은 구조(Structural) 패턴 중 하나로써 클래스의 인터페이스를 사용자가 기대하는 다른 인터페이스로 변환하는 패턴으로, 호환성이 없는 인터페이스 때문에 함께 동작할 수 없는 클래스들이 함께 작동하도록 해주는 방법이다. 간단하게 얘기하면 해외여행 갈 때 자주 들고 가는 돼지코 어댑터를 생각하면 쉽다. 우리나라는 220V를 사용하지만 해외여행을 가다 보면 110V를 사용하는 곳도 있을 것이다. 하지만 돼지코 어댑터를 사용한다면 110V를 사용하는 곳에서도 220V를 사용할 수 있다. 이처럼 서로 호환성이 없지만 함께 작동하도록 해주는 것이 어댑터 패턴이다. 어댑터 패턴의 구조는 다음과 같다. Target : Adapter가 구현하는 인터페이스이며 Client.. 2021. 7. 26. 전략 패턴(Strategy Pattern) 전략 패턴(Strategy Pattern)은 행위(Behavioral) 패턴 중 하나로써 실행 중에 알고리즘을 선택할 수 있게 하는 디자인 패턴이다. 특정한 계열의 알고리즘들을 정의하고 각 알고리즘을 캡슐화하며 이 알고리즘들을 해당 계열 안에서 상호 교체가 가능하게 만드는 방법이다. 간단하게 얘기하면 클라이언트가 수행하는 어떤 행위(알고리즘)를 클래스 별로 캡슐화하여 필요할 때마다 쉽게 행위를 교체할 수 있도록 해주는 방법이다. 별도의 클래스를 통해 클라이언트와 독립적으로 관리하기 때문에 새로운 기능을 추가하거나 수정한다 하여도 클라이언트는 아무런 영향을 받지 않는다. 전략 패턴의 구조는 다음과 같다. Context(문맥) : Strategy의 인터페이스를 이용하는 역할, 클라이언트는 Context를.. 2021. 7. 26. 싱글톤 패턴(Singleton Pattern) 싱글톤 패턴은 생성(Creational) 패턴 중 하나로써 객체를 오직 하나만 생성하여 생성된 객체를 프로그램 어디에서나 접근하여 사용할 수 있도록 하는 패턴이다. 간단하게 얘기하면 필요할 때마다 똑같은 객체를 매번 생성하지 말고 기존에 생성한 하나의 객체를 활용하도록 하는 디자인 패턴이다. 싱글톤 패턴의 구조는 다음과 같다. Singleton : 하나의 객체만 생성하도록 보장해주며 getInstance() 메서드를 통해서만 다른 클래스에서 객체에 접근할 수 있도록 해주는 클래스 간단한 예시를 통해 싱글톤 패턴을 이해해 보자. 회사에서 직원들이 모두 사용하는 정수기가 있다고 하자. 정수기의 이름을 간단하게 A라고 하겠다. 정수기를 사용할 때마다 정수기의 물의 양을 1만큼 감소한다고 하자. 이를 코드.. 2021. 7. 21. 이전 1 2 3 다음 반응형