관점 지향 프로그래밍(AOP; Aspect Oriented Programming)이란?
: 프로그래밍에 대한 관심을 핵심 과점, 부가 관점(공통 기능)으로 나누어 관심 기준으로 모듈화 하는 것
핵심 관심 사항(Core concern)
: 비즈니스 로직(애플리케이션의 주목적)을 달성하기 위한 핵심 로직에 대한 관심사
부가 관심 사항(Cross-cutting concern)
: 애플리케이션 전반에 걸쳐 공통적으로 사용되는 관심사
예시)
계좌 이체 프로그램 - (핵심 관점) 계좌 이체, (부가 관점) 로깅, 데이터베이스 연결
고객 관리 프로그램 - (핵심 관점) 고객 관리, (부가 관점) 로깅, 데이터베이스 연결
이에 AOP 관점을 적용하여 부가 관점 로직을 모듈화 할 경우,
부가 관점 코드를 핵심 코드에서 분리할 수 있으며 핵심 관점 코드에만 집중할 수 있을 뿐 아니라 변경과 확장에도 유연하게 대응 가능
더 자세한 사항은 아래 링크 참고
2022.10.11 - [공부 자료/Spring] - [Spring Core] AOP (Aspect Oriented Programming)
[Spring Core] AOP (Aspect Oriented Programming)
AOP(Aspect Oriented Programming)란? : OOP(Object Oriented Programming)은 객체지향 프로그래밍 즉, 객체 간의 관계를 지향하는 프로그래밍 방식 : Aspect(관심)을 지향하는 프로그래밍은 애플리케이션에 필요한 기
kcode-recording.tistory.com
'학습 기록 > 스프링 부트3 백엔드 개발자 되기[자바편]' 카테고리의 다른 글
[02장.3] 1. 스프링 부트3 둘러보기 예제 (0) | 2023.08.21 |
---|---|
[02장.2] 4. 이식 가능한 서비스 추상화(PSA) (0) | 2023.08.18 |
[02장.2] 2. 빈과 스프링 컨테이너 (0) | 2023.08.18 |
[02장.2] 1. 제어의 역전(IoC)과 의존성 주입(DI) (0) | 2023.08.18 |
[02장.1] 스프링과 스프링부트 (0) | 2023.08.17 |