1. AOP(Aspect Oriented Programming)의 개요
1-1. AOP(Aspect Oriented Programming)의 정의
- 요구사항에 대해 핵심관심사항과 횡단관심사항으로 분할, 개발, 통합 함으로써 모듈화를 극대화하는 프로그래밍 기법
1-2. AOP(Aspect Oriented Programming)의 특징
1) 단순/집중
- 개발절차 단순화 및 개발자에게는 비즈니스 기능에 대한 집중 가능
2) 비캡슐화
- 핵심 비즈니스 영역보다는 주변 업무 중심 공통 모듈에 해당
3) Aspect 이용
- 독립된 Aspect 단위변경을 통해 전체 응용시스템 변경 용이
4) OOP 기반
- OOP 사상을 기본으로 한 cross cut aspect 프로그래밍
2. AOP(Aspect Oriented Programming)의 동작원리, 구성요소, 설계절차
2-1. AOP(Aspect Oriented Programming)의 동작원리
2-2. AOP(Aspect Oriented Programming)의 구성요소
1) 핵심관심
- 시스템이 추구하는 핵심 기능 및 가치
2) 횡단관심
- 여러 개의 모듈에 공통적으로 적용되는 부가적인 요구사항
- 예. 보안/인증, 로그작성, 트랜잭션, 에러 검사 등
3) Joint Point
- 횡단관심의 기능이 삽입되어 동작할 수 있는 실행 가능한 특정위치
- 예) 메소드의 호출 부분 또는 리턴 시점
4) Point-Cut
- 어느 Joint Point 를 사용할 것인지 결정하는 선택 기능
5) Advice
- Joint Point에 삽입되어 동작할 수 있는 모듈
6) Aspect
- Point-cut(어디에서)과 Advice(무엇을 할지) 를 합쳐 놓은 코드
7) Weaving
- Point-cut에 의해서 결정된 Joint Point에 지정된 Advice 를 삽입하는 과정
2-3. AOP(Aspect Oriented Programming)의 설계 절차
'1. IT Story > Basic Studies' 카테고리의 다른 글
IT ROI (Return Of Investment) (0) | 2019.06.30 |
---|---|
BSC(Balanced Score Card) (0) | 2019.06.29 |
MDA(Model Driven Architecture) (0) | 2019.06.28 |
SLA (Software Product Line) (0) | 2019.06.27 |
플래닝 포커(Planning Poker) (0) | 2019.06.25 |
SCRUM (0) | 2019.06.24 |
ALM(Application Lifecycle Management) (0) | 2019.06.23 |
Daily Build (0) | 2019.06.22 |