[Spring] AOP
1. AOP Aspect Oriented Programming (관점 지향 프로그래밍) 기존 OOP에서는 핵심 로직을 여러 모듈에서 적용하는 데 있어 중복되는 코드가 발생한다. 핵심 관심(core concern): 핵심 비즈니스 로직공통 관심 사항(cross-cutting concern): 핵심 로직을 수행하기 위해서 필요한 부가적인 로직: 로깅, DB 연결, 파일 입출력, 보안 등 핵심 관심(core concern)과 공통 관심 사항(cross-cutting concern)으로 나눠보고 그 관점을 기준으로 각각 모듈화 하겠다. 이때 여러곳에서 쓰이는 공통 관심 사항을 모듈화한 것을 Aspect라고 한다. 핵심 기능에서 부가 기능을 분리함으로써 핵심기능을 설계하고 구현할 때 객체지향적인 가치를 지킬 수 ..
2024.07.06