1. AOP 란
· 기능(메소드)을 핵심 관심사(core concerns)와 횡단 관심사(Cross-cutting Concerns)에 대한 '관점'으로 분리하여 모듈화를 극대화하여 기존의 기능을 분리없이 하나의 객체에 모아놓는 OOP의 변경과 재사용 한계를 극복하기 위한 프로그래밍 기법
2. AOP 구현
1) 관심사 (concerns) : 기능
· 핵심 관심사(core concerns) : 단일 주요 핵심 기능
· 횡단 관심사(cross-cutting concerns) : 여러 모듈에서 공통적으로 사용되는 부가 기능
2) 어드바이스(Advice)
· 횡단 관심사를 모아 놓은 모듈(aspect)에서, 기능을 사용할 수 있도록 설정한 인터페이스
· 프로그램 코드의 "Joint point" 에 삽입
3) Point cut, Joint point
· Point Cut : "joint point" 를 정의
· Joint Point : 어드바이스(advice)가 삽입 되는 부분
4) 엮음(Weaving)
· 코드에 어드바이스(advice)를 적용하고 조립하는 과정
5) 응용 프로그램 실행 (Application)
3. AOP 특성
· 핵심관심사에서 횡단 관심사를 직접 호출하는 것이 아닌 횡단 관심사 모듈 → 어드바이스(advice)를 통해 호출
· 횡단 관심사는 독립적인 모듈(aspect) 단위 구현이 가능 (유지보수 및 생산성 용이)
반응형
'Study' 카테고리의 다른 글
[STUDY] 메모리 (RAM, Random Access Memory) (0) | 2021.11.03 |
---|---|
[STUDY] 자료구조(Data Structure) - 비선형 자료구조(Non-Linear Data Structure) (0) | 2021.11.02 |
[STUDY] 자료구조(Data Structure) - 선형 자료구조(Linear Data Structure) (0) | 2021.10.27 |
[STUDY] 기본기 (Study) - OSI 7 계층, TCP/IP 4 계층 (0) | 2021.10.02 |
[STUDY] 기본기 (Study) - 선언형(Declarative), 명령형(Imperative) (0) | 2021.10.02 |
댓글