👀이 글은 제가 공부한 것들을 잊어버리지 않기 위해 정리해 놓은 것입니다.
AOP(Aspect - Oriented - Programing): 관점지향 프로그래밍.
✔AOP는 spring이 아니라 방법론이다.
✔사용자가 원하는 관점의 업무(주업무-객체지향)이 아닌,
개발자가 원하는 관점의 업무(로그,보안,트랜잭션...)을 말한다.
✔공통 관심 사항(로그,보안,트랜잭션...)은 프록시 객체로 따로 빼어 놓고 사용한다.
📌용어정리.
용어 | 의미 |
---|
CC | 관심사 |
CCC | 공통 관심사 |
advice | ccc의 코드 |
join point | 포인트 컷이 들어갈 수 있는 모든 위치 |
point cut | ccc에 cc를 연결.(짝을 지어주는 것) |
advisor | advice + point cut |
프록시 객체 | 가로채서 연결해 주는 것. |
프록시 객체:
타겟(cc)을 호출하면 자기가 타겟(cc)인 척 호출되어 타겟(cc)에 지정된 어드바이스를 첨가해서 타겟에게 건내줌(ccc가 붙어서 나옴). 그러면 타겟은 그걸 뿌림.
출처:https://www.youtube.com/watch?v=y2JkXjOocZ4