관점지향 프로그래밍과 커스텀어노테이션 - AOP : 핵심기능과 부가기능 분리하자- 애플리케이션 = 부가기능(중복되어 코드 전반에 흩어져있다) + 핵심기능 / 핵심기능 : 핵심 비즈니스 로직- 부가기능과 적용할 위치를 합쳐 ASPECT로 모듈화- 핵심 비즈니스 로직과 Aspect가 합쳐져서 애플리케이션이 실행됨- AOP : 횡단 관심사를 핵심 비즈니스 로직에서 분리하여 모듈성 향상시키는 프로그래밍 패러다임 / OOP 보완 / Aspect라는 특별한 객체로 모듈화- Aspect : 부가기능을 모듈화한 것 - Advice(what,when) + Pointcut(where)- Tartet : aspect가 적용될 객체(클래스,메소드..)- Advice : aspect가 특정 조인포인트에서 해야하는 부가기능..