애스펙트(컴퓨터 프로그래밍)

Aspect (computer programming)

프로그램의 한 측면은 프로그램의 다른 많은 부분과 연결된 기능이지만 프로그램의 주요 기능과는 관련이 없습니다.한 측면은 프로그램의 핵심 관심사를 교차시키고, 따라서 관련 없는 기능을 캡슐화하려는 관심사의 분리를 위반한다.예를 들어, 로깅 코드는 많은 모듈을 크로스 컷할 수 있지만 로깅의 측면은 크로스 컷하는 모듈의 기능상의 문제와 분리되어야 합니다.로깅 및 지속성과 같은 측면을 비즈니스 로직에서 분리하는 것이 AOP([1]Aspect-Oriented Programming) 패러다임의 핵심입니다.

측면 지향은 요구사항 도출, 사양 및 설계를 통해 우려를 식별, 분석, 추적 및 모듈화하는 데 유용하기 때문에 프로그래밍에 국한되지 않는다.기능적 및 비기능적 행동 모두 기능적 우려를 기능적 요구사항에 [citation needed]매핑하는 대신 다른 우려를 교차시킬 수 있도록 함으로써 측면이 다차원적일 수 있다.

애스펙트 지향 소프트웨어 개발의 한 가지 견해는 프로그램의 모든 주요 특징, 즉 핵심 관심사(비즈니스 로직) 또는 교차 관심사(추가 기능)가 애스펙트이며, 이들을 엮음으로써(구성이라고도 함) 최종적으로 분리된 애스펙트로부터 전체를 만들어낼 수 있다는 것입니다.이 접근방식은 순수 측면 프로그래밍으로 알려져 있지만 하이브리드 접근방식이 더 일반적으로 사용됩니다.기능적 우려는 비기능적 또는 기능적 우려를 교차시킬 수 있다(예: 더 많은 기능의 필요성은 이동성을 해친다).표현과 구성에 대한 통일된 접근법은 AAP의 순수 접근법과 유사하며 다차원 [citation needed]표현이라고 불린다.

레퍼런스

  1. ^ Awais Rashid (2004). Aspect-Oriented Database Systems. Springer. ISBN 3-540-00948-5.