valid_ming 2021. 5. 5. 12:12

 

뉴렉처 강사님의 동영상 강의를 정리한 글입니다.

 

 

AOP란?

: Aspect Oriented Programming

 

Object Oriented Programming: 사용자가 원하는 업무 기반의 로직을 프로그래밍 한 것

사용자가 요구한 업무를 개발하기 위해 개발자, 운영자, 관리자가 넣은 코드. 사용자는 모르는 부가적인 코드

즉, 관점에 따라 프로그래밍을 달리하게 됨 (객체 지향 프로그래밍보다 더 큰 개념)

 

AOP 그림으로 이해하기

 

 

Concern

 

Primary Concern: 관점에 해당되는 것 중에 주 관심사(주 업무 로직)에 해당하는 것

Cross-cutting Concern: 개발자, 운영자가 주 업무 로직을 개발하기 위해 넣은 부가적인 로직

 

 

AOP 구현 방식

:  주 업무 로직이 아닌 부가 로직을 Core Concern에 직접 붙여 사용하지 않고 Cross-cutting Concern을 이용하여 부가 로직을 추가하여 부가 로직과 주 업무 로직을 분리한 것.

 

 

Cross-cutting Concern 그림으로 이해하기

 

=> AOP를 구현할 때 spring을 이용하면 쉽게 Cross-cutting Concern 가능함.