Avalon包含了很多设计模式,以实现为最好的服务器。Avalon的不同方面由各种不同的模式来表示。Avalon使用四个主要的概念模式:接口和实现分离(Separation of Interface and Implementation)、反转控制( Inversion of Control)、多维分离考虑( Multi-Dimensional Separation of Concerns)和面向方面编程(Aspect Oriented Programming)。 Avalon 也使用几个基础模式,如 Singleton 和Factory。
Avalon模式概述
(1)Separation of Interface and Implementation
接口和实现分离是Java语言的核心特性。但是它经常被误用。这里作为Avalon的一种模式列出来,被广泛应用。
(2)IoC
Avalon不仅具有继承层次,还具有组件层次。在这种层次中,程序流的控制完全在父组件的手里,就象军队里的士兵接受军官的命令一样。
(3)SoC
(4)AOP
这是提供SoC的下一个逻辑步骤。许多关系不能使用标准的OOP机制来集中地址化。而使用AOP(OOP的扩展),我们能够用简单的方式来实现。因为在Java的AOP功能不是很好,所以我们使用具有面向方面的接口(aspect marker interfaces)和COP来替代。