AOP(Aspect Oriented Programming, 관점 지향 프로그래밍)
·
Development/개발 공부
AOP란?AOP를 알기 위해서는 먼저 횡단 관심사에 대해 알아야 한다.횡단 관심사란 "애플리케이션의 여러 모듈(클래스·메소드)에 걸쳐 나타나는 부가적인 기능"을 의미한다.가령 로깅, 보안, 트랜잭션 관리, 성능 모니터링 등등.. 처럼 말이다. 기존의 OOP 방식은 횡단 관심사 코드가 여러 비즈니스 로직에 반복적으로 삽입되었다.메소드 내에 지속적으로 로그(log) 같은 것을 삽입하게 되면, 코드의 중복이 발생하며 가독성이 떨어진다. AOP는 이런 횡단 관심사를 모듈로 분리하기 위해 등장하였다.즉, 애플리케이션의 핵심 비즈니스 로직과 여러 모듈에 걸쳐 공통적으로 사용되는 부가 기능(횡단 관심사)을 분리화하여 모듈화하는 프로그래밍 방식이다. AOP의 장점1. 모듈성 향상: 비즈니스 로직만 존재하기 때문에 로직..