- AspectJ : AspectJ는 AOP를 하나의 언어와 같이 개발하는 것이 가능하다. 그런 만큼 aspect를 자유자제로 만들어 조절하는 것이 가능하다. 그러나 AspectJ에서 새롭게 배워야할 문법들과 이미 만들어져 있는 aspect들이 없어서 처음 접근하는 개발자들이 새롭게 익히는데 많은 시간을 필요로 한다. AspectWerkz는 AspectJ5부터 AspectJ와 공동 개발을 진행하기도 했다. 따라서 AspectWerkz에 대해서는 AspectJ에서 같이 다루도록 하겠다.
- AspectJ Load-Time Weaving : AspectJ Weaving 방법 중 Load Time Weaving에 대하여 살펴본다.
|
- Aspect-Oriented Programming in Java : AOP에 대한 소개와 기본적인 개념에 대하여 살펴볼 수 있다. 또한 Aspect는 또 어떤 일들을 수행할 수 있는지에 대하여 살펴볼 수 있다.
- 자바 언어에 AOP를 가져다 주는 AspectJ : 영역 지향 프로그래밍(Aspect-oriented programming : AOP)은 프로그래머들이 로깅과 같이 일반적인 책임 구분을 넘어서는 행위인 횡단적 사항을 모듈화하도록 해주는 새로운 프로그래밍 기법이다.
- AOP@Work: AOP tools comparison, Part 1, AOP@Work: AOP tools comparison, Part 2 : 현재 실무에 적용할 단계까지 개발되어 있는 다양한 AOP Tools들에 대한 비교문서이다. 이 문서에서 다루고 있는 AOP Tools은 AspectJ, AspectWerkz, JBoss AOP, Spring AOP이다. 이 AOP Tools들에 대한 장,단점 비교, 실행속도 등을 다룸으로서 AOP를 사용하려는 개발자들에게 가이드 역할을 해주고 있다.
- AOP@Work: AOP and metadata: A perfect match, Part 1, AOP@Work: AOP and metadata: A perfect match, Part 2 : J2SE 5.0이 배포되면서 가장 눈에 띄는 변화중의 하나는 annotation을 사용할 수 있다는 것이다. J2SE 5.0에서 지원하고 있는 annotation과 AOP를 이용하여 애플리케이션을 개발하는데 어떠한 변화를 느낄 수 있는지 파악할 수 있다.
- AOP@Work: Enhance design patterns with AspectJ, Part 1, AOP@Work: Enhance design patterns with AspectJ, Part 2 : AOP를 이용하여 지금까지 애플리케이션을 개발할 때 유용하여 사용해왔던 Design Pattern을 어떻게 구현할 수 있는지 다룬다. 또한 Design Pattern에 AOP를 접목시킬 경우 얻을 수 있는 장점들에 대하여 다룬다.
- AOP@Work: Design with pointcuts to avoid pattern density : 아직 문서를 읽어보지 않아서 뭔 내용인지 잘 모르겠다. 왜 이리 공부할게 많은지..
- http://aosd.net : The aosd.net site is intended to be a comprehensive source of information of information for Aspect-Oriented Software Development, and supports mailing lists related to AOSD
- http://aspectj.org/ : AspectJ is a seamless aspect-oriented extension to Java that enables the modular implementation of a wide range of crosscutting concerns.
- http://www.parc.xerox.com/csl/groups/sda : The goal of the Software Design Area at Xerox PARC is simple and long-standing: to make it possible to cleanly capture complex design structures in software implementations.
|