관점 지향 프로그래밍: Difference between revisions
From CS Wiki
(새 문서: 분류:소프트웨어 공학 ;AOP; Aspect Oriented Programming ;객체를 핵심과 횡단 관심사로 구분하여 처리하는 프로그래밍 기법) |
No edit summary |
||
Line 1: | Line 1: | ||
[[분류:소프트웨어 공학]] | [[분류:소프트웨어 공학]] | ||
;AOP; Aspect Oriented Programming | ;AOP; Aspect Oriented Programming | ||
;객체를 | ;객체를 핵심관심과 횡단관심으로 구분하여 처리하는 프로그래밍 기법 | ||
[[파일:AOP의 핵심관심과 횡단관심.jpg]] | |||
== 용어 == | |||
{| class="wikitable" | |||
|- | |||
! 용어 !! 설명 | |||
|- | |||
| Joinpoint | |||
|| | |||
* 메소드를 호출하는 '시점', 예외가 발생하는 '시점'과 같이 애플리케이션을 실행할 때 특정 작업이 실행되는 '시점'을 의미 | |||
|- | |||
| Advice | |||
|| | |||
* Joinpoint에서 실행되어야 하는 코드 | |||
* 횡단관점에 해당함 (트랜잭션/로그/보안/인증등..) | |||
|- | |||
| Target | |||
|| | |||
* 실질적인 비즈니스 로직을 구현하고 있는 코드 | |||
* 핵심관점에 해당함 (업무로직) | |||
|- | |||
| Pointcut | |||
|| | |||
* Target 클래스와 Advice가 결합(Weaving)될 때 둘 사이의 결합규칙을 정의하는 것이다 | |||
* 예로 Advice가 실행된 Target의 특정 메소드등을 지정 | |||
|- | |||
| Aspect | |||
|| | |||
* Advice와 Pointcut을 합쳐서 하나의 Aspect라고 한다. | |||
* 즉 일정한 패턴을 가지는 클래스에 Advice를 적용하도록 지원할 수 있는 것을 Aspect라고 한다. | |||
|- | |||
| Weaving | |||
|| | |||
* AOP에서 Joinpoint들을 Advice로 감싸는 과정을 Weaving이라고 한다. | |||
* Weaving 하는 작업을 도와주는 것이 AOP 툴이 하는 역할이다 | |||
|} |
Revision as of 05:06, 30 December 2019
- AOP; Aspect Oriented Programming
- 객체를 핵심관심과 횡단관심으로 구분하여 처리하는 프로그래밍 기법
용어
용어 | 설명 |
---|---|
Joinpoint |
|
Advice |
|
Target |
|
Pointcut |
|
Aspect |
|
Weaving |
|