SeouliteLab

AOP(Aspect Oriented Programming) 와 OOP(Object Oriented Programming) 뜻 본문

프로그래밍

AOP(Aspect Oriented Programming) 와 OOP(Object Oriented Programming) 뜻

Seoulite Lab 2016. 1. 20. 17:25

OOP(Object Oriented Programming)

객체 지향 프로그래밍

프로그래머가 데이터 타입 및 자동적으로 그와 관련된 절차도 정의할 수 있는 프로그래밍 방법론이라고 말할수 있다.



AOP(Aspect Oriented Programming)

관점 지향 프로그래밍

AOP 는 공통의 관심사항 을 적용해서 발생하는 의존 관계의 복잡성과 코드중복을 해소해주는 프로그래밍 기법이다.

AOP에서는 각 클래스에서 공통 관심 사항을 구현한 모듈에 대한 의존 관계를 갖기 보다는 Aspext를 이용하여 핵심 로직을 구현한 각클래스에 공통기능을 적용하게 된다.

AOP 에서 중요한 점은 Aspect 가 핵심 로직 클래스에 의존하지 않는다는 점이다.

일반적으로  AOP에서는 설정파일이나 설정클래스등을 이용하여 Aspect를 여러 클래스에 적용할수 있도록 하고 있다.

따라서 하나의 Aspect를 개발하면 Aspect를 수정할 필요 없이 여러 클래스에 적용할수 있게 된다.