• 순수 함수

    • 사이드 이펙트가 없다!
    • 참조 투명성(표현식을 결과값으로 대체할 수 있다)
  • cross-cutting

    • 이게 왜 cross?? → domain을 횡단하기 때문이다! AOP
    • 로그남기기, 성능 모니터링, 감사, 계량, 계측, 캐싱, 내결함성, 보안 등을 의미
    • 데코레이터 패턴
  • 데코레이터(Python) vs AOP(Java)

    : AOP는 컴파일타임, 런타임, 빌드타임에 걸쳐 리빙타임을 지정해줄 수 있다.

  • 데코레이터: 횡단관심사해결, 부가기능추가

  • 프록시: 접근제어