AOP가 필요한 상황
C언어에서 포인터 같은 존재로, 많은 사람들이 개발자이기를 포기하게 만드는 마의 구간이지만 언제 필요한지를 알게 되면 잘 쓸 수 있다!
모든 메소드의 호출 시간을 측정하고 싶다면?
공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern)
회원 가입 시간, 회원 조회 시간을 측정하고 싶다면?
문제는
회원가입, 회원 조회 시간 측정은 핵심 관심 사항이 아니다.
시간 측정 로직은 공통 관심 사항이다.
시간 측정 로직과 핵심 비즈니스 로직이 섞여서 유지보수가 어렵다.
시간 측정 로직을 별도의 공통 로직으로 만들기 매우 어렵다.
시간 측정 로직을 변경할 때 모든 로직을 찾아가면서 변경해야 한다.
Last updated