디자인 패턴
-
Design Pattern: Decorator (데코레이터)디자인 패턴 2021. 6. 19. 13:18
https://refactoring.guru/design-patterns의 디자인 패턴을 해석한 글입니다. 데코레이터 개념 데코레이터 는 구조적 디자인 패턴이다. 특정 컴포넌트를 특수한 래퍼 객체 안에 배치하여 새로운 동작을 할 수 있도록 한다. 문제 발견 중요한 이벤트를 사용자에게 알려주는 알림 라이브러리를 개발한다고 하자. 라이브러리의 첫 버전은 Notifier 클래스를 기반으로 한다. 메서드는 클라이언트로부터 메세지를 주고 받을 수 있다. 클라이언트 역할을 하는 서드-파티 애플리케이션은 Notitier 객체를 한번 생성하고 구성해야한다. 그리고 중요한 이벤트가 생겼을 때 각 시간에 사용하도록 되어있다. 시간이 지나 라이브러리 유저들은 이메일 알림보다 다른 종류의 알림을 원한다. 많은 사람들이 중요햔..
-
Design Pattern: Factory Method(팩토리 메서드)디자인 패턴 2021. 6. 12. 12:48
https://refactoring.guru/design-patterns 의 디자인 패턴을 해석한 글입니다. 개념 팩토리 메서드 패턴은 인터페이스를 제공하는 생성 디자인 패턴이다. 인터페이스는 슈퍼 클래스에서 객체를 생성하고 서브 클래스가 생성 될 객체의 유형을 변경한다. 문제 물류 관리 애플리케이션을 만든하고 상상해보자. 만들 앱의 첫 버전은 오직 트럭으로만 운송을 할 수 있디고 한다면, 코드는 대부분 Truck 클래스에 있다. 만약에 애플리케이션이 잘된다고 가정해보자. 하루에 해양 물류를 앱에 통합하라는 수십개의 요청이 해양 운송 업체에서 들어온다면 어떨까? 좋은 소식이긴 하지만 현재 코드는 Truck 클래스에 묶여있다. Ships이라는 클래스를 앱에 추가하려면 아마 전체의 코드 베이스를 바꿔야 한다..