[Spring] Aspected-Oriented Programming(AOP) 개념과 종류 정리
AOP (Aspected Oriented Programming) 이란? 애플리케이션의 핵심 기능을 담고 있지는 않지만, 애플리케이션을 구성하는 중요한 한 요소이고, 핵심 기능에 부가되어 의미를 갖는 특별한 모듈을 가리킨다. AOP는 문제를 해결하기 위한 핵심 관심사와 전체에 적용되는 공통 모듈 사항을 기준으로 프로그래밍함으로써 공통 모듈을 여러 코드에 쉽게 적용할 수 있도록 도와주는 역할을 한다. ex) 공통 트랜잭션 처리, 공통 인증 / 인가, 로그 처리 등등.. 이러한 부가 기능들을 한 곳에 모아서 독립적인 모듈의 Aspect로 정의한다. 독립된 측면에 존재하는 부가 기능을 Aspect로 모듈화시킨 덕분에, 핵심 비즈니스는 순수하게 그 기능을 담은 코드로만 존재하고 독립적으로 살펴볼 수 있도록 한다...
프로그래밍/기타
2024. 2. 28. 22:52