프로그래밍 공부/Spring
[Spring] AOP란?
valid_ming
2021. 5. 5. 12:12
뉴렉처 강사님의 동영상 강의를 정리한 글입니다.
AOP란?
: Aspect Oriented Programming
Object Oriented Programming: 사용자가 원하는 업무 기반의 로직을 프로그래밍 한 것
사용자가 요구한 업무를 개발하기 위해 개발자, 운영자, 관리자가 넣은 코드. 사용자는 모르는 부가적인 코드
즉, 관점에 따라 프로그래밍을 달리하게 됨 (객체 지향 프로그래밍보다 더 큰 개념)

Concern
Primary Concern: 관점에 해당되는 것 중에 주 관심사(주 업무 로직)에 해당하는 것
Cross-cutting Concern: 개발자, 운영자가 주 업무 로직을 개발하기 위해 넣은 부가적인 로직
AOP 구현 방식
: 주 업무 로직이 아닌 부가 로직을 Core Concern에 직접 붙여 사용하지 않고 Cross-cutting Concern을 이용하여 부가 로직을 추가하여 부가 로직과 주 업무 로직을 분리한 것.

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