AOP

    [Spring] 스프링 AOP의 개념과 특징

    틀린 내용이 있을 수 있습니다. 댓글로 알려주시면 수정하도록 하겠습니다. 감사합니다! 스프링 AOP란? Aspect Oriented Programming의 약자로 관점 지향 프로그래밍이라고 합니다. 관점 지향이란 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나눈 후 그 관점을 기준으로 모듈화를 진행한다는 뜻입니다. (모듈화: 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것을 말합니다.) 위의 그림에서 색이 있는 것들은 모두 Concern라고 생각하면 됩니다. (Concern : 여러 클래스와 메소드 등에서 비슷하게 작성되어 있는 코드를 의미합니다.) 각각의 클래스로 흩어져있는 Concern들을 우리는 Crosscutting Concerns 흩어진 관심사 라고 부릅니다. AOP는 저 흩어진 관심사..