짱아의 개발 기록장

10강. 프록시 패턴 본문

반응형

기존 코드 건드리지 않고 새 기능 추가하기

(실습을 통해 진행했다.)

1. 첫 번째 실습

Cash class
Payment interface
Store class
CashPerf class
StoreTest class

CashPerf가 프록시의 역할을 한다.

+ Store라는 클라이언트 side에서 CashPerf를 사용했기 때문에 성능 측정이 가능하다.

(만약, Store에서 Store strore = new Store(Cash())를 했다면.... 성능측정은 불가능하다.)

 

새로운 코드인 CashPer.java를 추가하긴 했지만 기존의 코드를 건들이지 않고 새로운 기능(성능측정)을 추가했다.

 

CashPerf 사용 시
Cash 사용 시

이런 일들이 Spring AOP에서는 대부분 자동으로 이루어진다. 굉장히 복잡한 내부적인 로직으로 돌아간다.

따라서, Spring에서는 우리가 비즈니스 로직 개발에만 집중을 할 수 있게끔 이러한 복잡한 작업들을 대신 해준다.

반응형
Comments