반응형

관점 지향 프로그래밍 2

[Spring] AOP 용어 및 개념 정리

애스펙트(Aspect) 여러 객체에 공통으로 적용되는 기능 (공통 기능) 어드바이스(Advice) + 포인트 컷(PointCut)을 모듈화 하여 애플리케이션에 포함되는 횡단 기능(Cross-cutting Concerns**)** 여러 개의 어드바이스와 포인트컷이 함께 존재 조인 포인트(join point) 위 이미지의 S는 메서드 실행 전의 포인트이고, E는 메서드 실행 후의 포인트이다. S와 같은 포인트를 어드바이스가 적용될 조인 포인트라고 한다. 클래스 초기화, 객체 인스턴스화, 메서드 호출, 필드 접근, 예외 발생과 같은 애플리케이션 실행 흐름에서의 특정 포인트를 의미한다. 애플리케이션에 새로운 동작을 추가하기 위해 조인포인트에 관심 코드(Aspect code)를 추가할 수 있다. 횡단 관심은 조인..

[Spring] AOP란 무엇인가? (관점 지향 프로그래밍)

AOP(Aspect Oriented Programming)란? AOP(Aspect Oriented Programming)를 직역하면 관점 지향 프로그래밍으로 해석할 수 있다. OOP(Object Oriented Programming)은 객체 지향 프로그래밍이다. 즉, 객체 간의 관계를 지향하는 프로그래밍 방식이다. 그렇다면 이 관점(Aspect)을 지향하는 프로그래밍은 무엇일까? 위 그림처럼 아이를 키우는 육아 방식이나 교육 방식 등은 부모에 따라 제각각이다. 어떤 부모는 아이의 언어 발달을 위해 책을 읽어줄 것이고, 어떤 부모는 동요나 만화를 들려줄 것이다. 이처럼 아이를 키우는 방식은 다를 수 있지만, 공통되는 부분이 존재한다. 부모의 공통된 관심사는 어떤 방식으로 아이를 키우는 것과는 별개로 아프지..

반응형