본문 바로가기

728x90

AOP

[Spring] AOP는 프록시 객체를 이용하여 구현하는 이유는? 프록시 객체란? 프록시 객체는 원본 객체를 대신해서 호출될 객체로, 원본 객체를 감싸서 클라이언트의 요청을 처리하는 중간 단계에 위치합니다. 프록시 객체는 원본 객체와 같은 인터페이스를 구현하고 있어서, 클라이언트는 프록시 객체를 호출하는 것으로 인해 원본 객체의 메소드를 호출하는 것과 같은 효과를 얻을 수 있습니다. 프록시 객체를 사용하는 이유는, 프록시 객체를 통해 원본 객체에 대한 접근을 제어하거나, 부가적인 기능을 제공하기 위해서입니다. 예를 들어, 보안을 위해 원본 객체의 메소드에 접근할 때 권한 검사를 수행하거나, 성능을 개선하기 위해 캐싱을 사용하는 등의 기능을 프록시 객체에서 추가할 수 있습니다. 이렇게 함으로써, 원본 객체의 코드를 변경하지 않고도 클라이언트의 요구사항에 맞추어 기능을 추.. 더보기
[Spring] AOP란? AOP(Aspect-Oriented Programming)은 객체 지향 프로그래밍에서 공통적으로 발생하는 부가 기능(로깅, 보안, 트랜잭션 관리 등)을 모듈화하는 프로그래밍 기법입니다. AOP는 프로그램의 모듈성, 유지 보수성, 재사용성 등을 높이기 위해 개발되었습니다. 기존의 객체 지향 프로그래밍에서는 공통적인 기능을 모든 객체에서 반복적으로 구현해야 했으나, AOP는 이러한 반복적인 작업을 해결하기 위해 공통 기능을 모듈화하여, 각각의 객체에 적용하는 방식으로 개발됩니다. AOP는 대표적으로 다음과 같은 용어를 사용합니다. Aspect : 공통적으로 수행되는 부가 기능입니다. 예를 들어, 로깅, 보안, 트랜잭션 관리 등이 Aspect의 예입니다. Join point : Aspect가 적용될 수 있는 .. 더보기

728x90