분류 전체보기 (173) 썸네일형 리스트형 행동 관련 디자인 패턴 > 템플릿 콜백 패턴(Template Callback Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 템플릿 콜백 패턴 콜백으로 상속 대신 위임을 사용하는 템플릿 패턴. 상속 대신 익명 내부 클래스 또는 람다 표현식을 활용할 수 있다. 상속을 사용하지 않고 Callback이라는 인터페이스를 사용한다. Callback이라는 인터페이스가 Strategy Pattern처럼 전략을 제공해준다. 계산을 담당하는 로직을 담고있는 메서드 하나를 Callback이라는 인터페이스에 넣어놓는다. 전략 패턴과 다른 .. 행동 관련 디자인 패턴 > 템플릿 메서드 패턴(Template Method Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 템플릿 메서드 패턴 행동 관련 디자인 패턴. 알고리듬 구조를 서브 클래스가 확장할 수 있도록 템플릿으로 제공하는 방법. 추상 클래스는 템플릿을 제공하고 하위 클래스는 구체적인 알고리듬을 제공한다. 읽어오고 처리하고 출력하는 등의 알고리듬 구조를 템플릿으로 제공하는 패턴. 템플릿을 상속받는 서브클래스가 구체적인 로직을 구현한다. 이 패턴은 상속을 사용한다. 템플릿 메서드 패턴의 클래스 다이어그램 A.. 행동 관련 디자인 패턴 > 전략 패턴(Strategy Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 전략 패턴 행동 관련 디자인 패턴. 여러 알고리듬을 캡슐화하고 상호 교환 가능하게 만드는 패턴. 컨텍스트에서 사용할 알고리듬을 클라이언트가 선택한다. 어떤 업무를 수행하는 방법이 여러가지일 때, 그 여러 알고리듬을 개별적인 클래스로 캡슐화하고, 캡슐화되어 있는 것을 공통된 인터페이스로 추상화하여, 로직을 수행하는 곳에서는 추상화된 인터페이스만 사용하여, 코드는 바뀌지 않지만, 우리가 사용하는 알고.. 행동 관련 디자인 패턴 > 상태 패턴(State Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 상태 패턴 행동 관련 디자인 패턴. 객체 내부 상태 변경에 따라 객체의 행동이 달라지는 패턴. 상태에 특화된 행동들을 분리해 낼 수 있으며, 새로운 행동을 가하더라도 다른 행동에 영향을 주지 않는다. 애플리케이션에서 상태 변경에 따라 어떤 특정한 오브젝트들의 행동이 바뀌는 동작을 스테이트 패턴을 통해 구현할 수 있다. 특정한 상태마다 다르게 동작하는 오퍼레이션을 상태 패턴으로 구현하지 않으면 if.. 행동 관련 디자인 패턴 > 옵저버 패턴(Observer Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 옵저버 패턴 행동 관련 디자인 패턴. 다수의 객체가 특정 상태 변화를 감지하고 알림을 받는 패턴. Publish Subscribe 패턴을 구현할 수 있다. 여러 개의 객체들이 어떤 특정한 상태의 변화를 감지하고 반응해야할 때 적용할 수 있는 패턴. 이 패턴을 적용하면 pub-sub 패턴을 쉽게 구현할 수 있다. 주기적으로 가져오는 데 있어서 메시지가 변경되지 않았는데도 리소스가 들어가도록 구현하면.. 행동 관련 디자인 패턴 > 메멘토 패턴(Memento Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 메멘토 패턴 행동 관련 디자인 패턴. 캡슐화를 유지하면서 객체 내부 상태를 외부에 저장하는 방법. 객체 상태를 외부에 저장했다가 해당 상태로 다시 복구할 수 있다. 객체 직렬화에서 메멘토 패턴을 활용한다. 어떤 객체의 상태를 밖에 저장하려고 한다면 객체 상태가 외부에 노출이 되어야 한다. 그러나 이처럼 객체의 상태를 외부에 노출시키지 않으면서, 즉 캡슐화시켜 외부에 저장했다가 복원하는 방법이 메멘.. 행동 관련 디자인 패턴 > 중재자 패턴(Mediator Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 중재자 패턴 행동 관련 디자인 패턴. 여러 객체들이 소통하는 방법을 캡슐화하는 패턴. 여러 컴포넌트 간의 결합도를 중재자를 통해 낮출 수 있다. 여러 컴포넌트들이 있고 각각의 컴포넌트들이 서로 직접 의사소통을 하고 있다고 가정한다면, 각각의 컴포넌트들이 강하게 결합하게 된다. 이럴경우 코드 구현, 변경, 테스트, 재사용하기 모두 어렵다. 모든 Colleague들은 Mediator 인터페이스를 참조.. 행동 관련 디자인 패턴 > 이터레이터 패턴(Iterator Pattern) https://inf.run/6Shr 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 이터레이터 패턴 행동 관련 디자인 패턴. 집합 객체 내부 구조를 노출시키지 않고 순회하는 방법을 제공하는 패턴. 집합 객체를 순회하는 클라이언트 코드를 변경하지 않고 다양한 순회 방법을 제공할 수 있다. Iterator라는 인터페이스가 있고 클라이언트가 어떻게 순회할지 방법을 갖고 있다. ConcreteIterator는 이 인터페이스를 실체화하고 구체적인 순회 로직이 들어가 있다. 이터레이터 패턴.. 이전 1 ··· 4 5 6 7 8 9 10 ··· 22 다음