본문 바로가기
728x90

spring boot10

스프링의 템플릿/콜백 패턴 이번 포스트에서는 스프링에서 자주 등장하는 템프릿/콜백 패턴에 대해서 알아보도록 하겠습니다. 템플릿/콜백 패턴을 설명하기 전에 확장에는 자유롭게 열려있고 변경에는 굳게 닫혀 있다는 객체지향 설계의 핵심 원리인 개방 폐쇄 원칙(OCP)을 다시 한번 생각해 봅시다. 이 원칙은 코드에서 어떤 부분은 변경을 통해 그 기능이 다양해지고 확장하려는 성질이 가지고, 어떤 부분은 고정이 되어있어 변하지 않으려는 성질을 가지고 있습니다. 변화의 특성이 다른 부분을 구분 해주고(변하는 것과 변하지 않는 것), 각각 다른 목적과 다른 이유에 의해 다른 시점에 독립적으로 변경될 수 있는 효율적인 구조를 만들어주는 것이 개방 폐쇄 원칙입니다. 템플릿/콜백 패턴은 이렇게 바뀌는 성질이 다른 코드 중 거의 변경이 일어나지 않으며 .. 2023. 4. 2.
Spring - 오브젝트와 의존관계(스프링의 IoC와 DI) 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(관심사의 분리) Spring - 오브젝트와 의존관계(관심사의 분리) Spring 이란? 스프링은 자라를 기반으로 한 기술입니다. 스프링의 철학은 자바 엔터프라이즈 기술의 혼란 속에서 잃어버렸던 객체지향 기술의 진정한 가치를 회복시키고, 그로부터 객체지향 프로 rbsks.tistory.com 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(상속을 통한 확장과 인터페이스의 도입) Spring - 오브젝트와 의존관계(상속을 통한 확장과 인터페이스의 도입) 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(관심사의 분리) Spring - 오브젝트와 의존관계(관심사의 분리) S.. 2023. 3. 21.
Spring - 오브젝트와 의존관계(상속을 통한 확장과 인터페이스의 도입) 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(관심사의 분리) Spring - 오브젝트와 의존관계(관심사의 분리) Spring 이란? 스프링은 자라를 기반으로 한 기술입니다. 스프링의 철학은 자바 엔터프라이즈 기술의 혼란 속에서 잃어버렸던 객체지향 기술의 진정한 가치를 회복시키고, 그로부터 객체지향 프로 rbsks.tistory.com 이전 포스트에서 리팩토링 메소드 추출 기법을 사용하여 관심사를 분리해 변화에 좀 더 유연하게 대처할 수 있는 코드를 만들어 보았습니다. 이번 포스트에서는 변화를 반기는 DAO를 만들어 보겠습니다. 앞에서 만들었던 UserDao가 인기를 끌면서 N 사와 D 사에서 사용자 관리를 위해 UserDao를 구매하겠다는 주문이 들어왔다고 가정해 봅시다.. 2023. 3. 19.
Spring - 오브젝트와 의존관계(관심사의 분리) Spring 이란? 스프링은 자라를 기반으로 한 기술입니다. 스프링의 철학은 자바 엔터프라이즈 기술의 혼란 속에서 잃어버렸던 객체지향 기술의 진정한 가치를 회복시키고, 그로부터 객체지향 프로그래밍이 제공하는 폭넓은 혜택을 누릴 수 있도록 기본으로 돌아가자는 것입니다. 스프링이 가장 관심을 많이 두는 대상은 오브젝트입니다. 애플리케이션에서 오브젝트가 생성되고 다른 오브젝트와 관계를 맺고, 사용되고, 소멸하기까지의 전 과정을 자세히 살펴보아야 합니다. 결국 오브젝트에 대한 관심은 오브젝트의 기술적인 특징과 사용법을 넘어서 오브젝트의 설계로 발전하게 됩니다. 객체지향 설계의 기초와 원칙, 다양한 목적을 위해 재활용 가능한 설계 방법인 디자인 패턴 좀 더 깔끔한 구조가 되도록 지속적으로 개선해나가는 작업인 리팩.. 2023. 3. 19.
728x90