728x90 반응형 확장성4 [디자인패턴] 데코레이터(Decorator) 패턴 이해하기 안녕하세요. J4J입니다. 이번 포스팅은 데코레이터 (Decorator) 패턴에 대해 적어보는 시간을 가져보려고 합니다. Decorator 패턴이란? decorator 패턴은 객체를 동적으로 유연하게 확장하여 새로운 기능들을 추가하도록 도와주는 디자인 패턴입니다. decorator 패턴에 대해서 가장 쉽게 얘기해 볼 수 있는 것은 특정 객체 자체에는 변화가 없고 단순히 새로운 장식들을 추가해 줘야 되는 상황이라고 말할 수 있습니다. 일상에서 쉽게 생각해볼 수 있는 예시로 햄버거를 구매할 때를 말해보겠습니다. 햄버거를 구매하기 위해 우리가 많이 아는 프랜차이즈 집으로 가게 될 경우 기본적인 햄버거 구성품들이 나열되어 있는 것을 확인할 수 있습니다. 하지만 구매자에 따라 기본 구성이 이루어진 햄버거를.. 2024. 5. 1. [디자인패턴] 추상 팩토리(Abstract Factory) 패턴 이해하기 안녕하세요. J4J입니다. 이번 포스팅은 추상 팩토리 (Abstract Factory) 패턴에 대해 적어보는 시간을 가져보려고 합니다. 관련 글 [디자인패턴] 팩토리 메서드(Factory Method) 패턴 이해하기 Abstract Factory 패턴이란? abstract factory 패턴은 생성해야 되는 객체들 중 관련된 객체들을 서로 묶어 객체들의 집합 군을 생성할 수 있도록 도와주는 디자인 패턴입니다. abstract factory 패턴과 유사하게 비교될 수 있는 디자인 패턴으로 factory method 패턴이 있습니다. 두 디자인 패턴의 차이점에 대해 간단하게 설명해 보면 다음과 같이 얘기해 볼 수 있습니다. abstract factory → 집합 군의 객체들을 생성하기 위해 사용.. 2024. 4. 28. [디자인패턴] 템플릿 메서드(Template Method) 패턴 이해하기 안녕하세요. J4J입니다. 이번 포스팅은 템플릿 메서드 (Template Method) 패턴에 대해 적어보는 시간을 가져보려고 합니다. Template Method 패턴이란? template method 패턴은 상위 클래스에서 공통으로 사용되는 템플릿을 제공하여 하위 클래스에서 구체적인 단계를 재 정의할 수 있도록 도와줍니다. template method의 기본 구조는 다음과 같습니다. 구조를 보시면 상위 클래스에서는 공통으로 재 사용될 수 있는 메서드 (= Template Method)를 제공하고 있습니다. 그리고 하위 클래스 별로 상세 로직을 정의할 수 있도록 추상 메서드 (= Primitive Method)를 제공하고 있습니다. 개인적으로 template method는 구조만 확인하더.. 2024. 4. 22. [디자인패턴] 팩토리 메서드(Factory Method) 패턴 이해하기 안녕하세요. J4J입니다. 이번 포스팅은 팩토리 메서드 (Factory Method) 패턴에 대해 적어보는 시간을 가져보려고 합니다. Factory Method 패턴이란? factory method 패턴은 객체 생성을 상위 클래스가 아닌 하위 클래스에서 생성하도록 도와주는 패턴으로 하위 클래스에 의해 어떤 객체가 생성될지 결정되는 디자인 패턴입니다. factory method 패턴을 이해하기 위해선 하위 클래스에서 어떻게 생성을 할 수 있는지를 파악해야 합니다. 일반적으로 특정 객체를 생성하려고 한다면 new 연산자를 이용하여 객체들을 생성할 것입니다. 그리고 서로 다른 객체이지만 동일한 클래스를 사용해야 되는 경우 자연스럽게 다음과 같은 코드가 작성될 것입니다. Product productA = new.. 2024. 4. 22. 이전 1 다음 728x90 반응형