Skip to content

Latest commit

 

History

History
16 lines (14 loc) · 874 Bytes

AspectOrientedProgramming.md

File metadata and controls

16 lines (14 loc) · 874 Bytes

Aspect-Oriented Programming

  • 관점 지향 프로그래밍
  • DI가 어플리케이션 모듈간 결합도를 낮춘다면, AOP는 어플리케이션 전체에 사용되는 기능을 재사용하기 위한 것.
  • OOP에서 바라보던 관점을 다르게 해 부가기능적 측면에서 보았을 때 공통 요소를 추출하는 것

OOP vs AOP

  • OOP : 비지니스 로직의 모듈화
    • 모듈화 단위의 핵심은 비지니스 로직
    • 예) A 도메인에 대한 A 서비스, B 도메인에 대한 B 서비스,..
  • AOP : 인프라 혹은 부가기능의 모듈화
    • 대표적 예) 로깅, 트랜잭션, 보안 등
    • 각각 모듈들의 주 목적 외 필요한 부가적인 기능들.
    • 예) A 서비스와 B 서비스에서 공통적으로 사용되는 기능들.

참고