aop

    [Spring] AOP

    7. AOP 7.1 AOP의 개요 7.1.1 AOP (Aspect Oriented Programming, 관점(관심) 지향적인 프로그래밍) - OOP(Object Oriented Programming, 객체지향 프로그래밍)를 보완하는 확장적인 개념 - Aspect(측면, 관점, 관심) : 핵심적인 비즈니스 로직은 아니지만 반드시 해야 하는 작업들ex. 버스, 지하철로 출·퇴근을 할 때 교통카드를 찍어야 함, 목적지에 정시에 도착하는 것이 중요하고 교통카드를 찍는 행위가 메인은 아님. - 관심의 분리(Separation of Concerns)를 통해 핵심관점(업무로직) + 횡단관점(트랜잭션, 로그, 보안, 인증 처리 등)으로 관심의 분리를 실현 - 장점 : 중복되는 코드 제거, 효율적인 유지 보수, 높은 ..