Java/스프링 AOP

Spring AOP - 핵심기능, 부가기능 , 애스펙트

ta_chan 2023. 9. 5. 21:10

핵심기능은 애플리케이션의 주요 비즈니스 로직(상품 검색, 주문, 결제 등의 기능 등)을 의미하고,

부가기능은 애플리케이션의 여러 부분에 걸쳐 반복적으로 나타나는 기능(로깅, 트랜잭션 관리, 보안 체크, 에러 처리 등)을 의미한다.

Aspect는 여러 객체나 함수에 걸쳐서 반복되는 공통적인 관심사(기능)를 모듈화한 것을 의미합니다.

AOP는  핵심 로직에서 반복적으로 나타나는 부분(횡단 관심사)을 모듈화하여 여러 곳에 적용하는 기술이다. 이로 인해 코드의 중복성을 줄이고, 모듈의 재사용성을 높일 수 있어 많은 프레임워크와 애플리케이션에서 활용된다.

 

핵심 기능은 애플리케이션의 핵심 비즈니스 로직을, 부가 기능은 그 로직을 실행하는 동안 필요한 추가적인 작업들을 의미한다. AOP는 이 두 기능을 효과적으로 분리하고 관리하는 방법을 제공한다.