论文部分内容阅读
软件设计模式代表了从成功的系统设计中分离出来的可复用的优秀设计经验,已成为现代软件系统设计的重要研究对象。虽然设计模式有利于软件的重用,但当设计模式实例化时,存在模式的重叠、可追踪性以及模式代码难于复用等问题。面向方面的程序设计方法(AOP,Aspect-Oriented Programming) 可以有效地描述 OOP(Object-Oriented Programming) 方法不能描述的横切关注点,并能很好的将系统中模式实现的代码封装在一个独立的模块中,从而使得程序的模块化程度和可复用性得到改善。
本文基于面向方面程序设计的基本思想,将GOF的23个设计模式作为实现的目标,分析了各个设计模式用 AOP 实现的可能性。对各个设计模式用AOP实现前后代码进行比较,从耦合性、可重用性、模块性等方面进行了定量分析,我们可以发现 23 种模式中绝大多数模式的模块化程度提高,超过一半的复用性得到改善。
本课题的意义在于,用面向方面的程序设计方法实现了设计模式,并把它与用 Java 实现的设计模式进行了比较,分析了各自的优缺点。对基于模式的软件开发具有指导作用。