DIP
-
디자인 패턴을 구분하는 두 가지 방식 -> Purpose, Scope그중에 중점으로 살펴볼 방식은 scope에 의한 구분 방식이다. scope는 두 가지로 나뉠 수 있다 -> 클래스, 오브젝트 클래스는 상속(inheritance)을 통한 확장성을 가진 패턴오브젝트는 합성(composition)을 이용한 패턴 대부분의 디자인 패턴은 오브젝트 패턴이다. 가능하면 오브젝트 합성을 상속보다 더 선호하라는 디자인 패턴의 기본 객체지향 원리를 따른 것이다. 오브젝트 합성을 이용하는 디자인 패턴을 적용할 때 스프링의 의존관계 주입을 사용 - 앞에 설명한 전략 패턴 또한 이에 해당 데코레이터(Decorator) 디자인 패턴오브젝트에 부가적인 기능/책임을 동적으로 부여하는 디자인 패턴- 기존의 코드는 건드리지 않고,..
토비의 스프링 6 - DI와 디자인 패턴, 의존성 역전 원칙디자인 패턴을 구분하는 두 가지 방식 -> Purpose, Scope그중에 중점으로 살펴볼 방식은 scope에 의한 구분 방식이다. scope는 두 가지로 나뉠 수 있다 -> 클래스, 오브젝트 클래스는 상속(inheritance)을 통한 확장성을 가진 패턴오브젝트는 합성(composition)을 이용한 패턴 대부분의 디자인 패턴은 오브젝트 패턴이다. 가능하면 오브젝트 합성을 상속보다 더 선호하라는 디자인 패턴의 기본 객체지향 원리를 따른 것이다. 오브젝트 합성을 이용하는 디자인 패턴을 적용할 때 스프링의 의존관계 주입을 사용 - 앞에 설명한 전략 패턴 또한 이에 해당 데코레이터(Decorator) 디자인 패턴오브젝트에 부가적인 기능/책임을 동적으로 부여하는 디자인 패턴- 기존의 코드는 건드리지 않고,..
2024.11.10 -
8장에서 배운 의존성 관리기법들을 정리하는 챕터라고 생각이름을 가진 설계 원칙을 통해 기법들을 정리 개방-폐쇄 원칙(open-closed principle)(OCP)확장 가능하고 변화에 유연하게 대응할 수 있는 설계확장에 열려 있다 : '동작'을 추가해서 기능을 확장수정에 대해 닫혀 있다 : '코드'를 수정하지 않고 동작을 추가하거나 변경유연한 설계란 기존의 코드를 수정하지 않고도 애플리케이션의 동작을 확장할 수 있는 설계 컴파일타임 의존성을 고정시키고 런타임 의존성을 변경하라의존성 관점에서 개방-폐쇄 원칙을 따르는 설계- 컴파일타임 의존성은 유지하면서 런타임 의존성의 가능성을 확장하고 수정할 수 있는 구조 추상화가 핵심이다개방-폐쇄 원칙의 핵심은 추상화에 의존하는 것추상화란 핵심적인 부분만 남기고..
[Object] 9장 : 유연한 설계8장에서 배운 의존성 관리기법들을 정리하는 챕터라고 생각이름을 가진 설계 원칙을 통해 기법들을 정리 개방-폐쇄 원칙(open-closed principle)(OCP)확장 가능하고 변화에 유연하게 대응할 수 있는 설계확장에 열려 있다 : '동작'을 추가해서 기능을 확장수정에 대해 닫혀 있다 : '코드'를 수정하지 않고 동작을 추가하거나 변경유연한 설계란 기존의 코드를 수정하지 않고도 애플리케이션의 동작을 확장할 수 있는 설계 컴파일타임 의존성을 고정시키고 런타임 의존성을 변경하라의존성 관점에서 개방-폐쇄 원칙을 따르는 설계- 컴파일타임 의존성은 유지하면서 런타임 의존성의 가능성을 확장하고 수정할 수 있는 구조 추상화가 핵심이다개방-폐쇄 원칙의 핵심은 추상화에 의존하는 것추상화란 핵심적인 부분만 남기고..
2024.08.26