《软件设计模式与体系结构》全套PPT课件.pptx

《软件设计模式与体系结构》全套PPT课件.pptx

Unit 1.1 软件设计模式概述;;设计模式的诞生与发展Gang of Four;Erich Gamma;设计模式的诞生与发展模式;设计模式的诞生与发展模式要素与结构;软件设计模式定义及要素;设计模式的分类根据使用目的划分;设计模式的分类根据范围划分;;;设计模式的优点 ;设计模式的重要性;设计模式学习步骤;设计模式的掌握层次;Unit 1.2 eclipse开发环境搭建;设置eclipse编码为utf-8;定制eclipse工作界面;设置eclipse编辑器助手 ;设置项目包名呈现方式(有层次);添加AmaterasUML插件;1.3 类及类间关系的UML类图表示;类间关系;;类间关系实现关系;类间关系关联关系;类间关系关联关系聚合;类间关系关联关系组合;类间关系关联关系自关联;类间关系依赖关系;创建UML类图文件;Amateras UML工具的使用;类(接口)的UML表示;泛化关系的UML表示;泛化关系的UML表示示例代码及运行结果;实现关系的UML表示;实现关系的UML表示示例代码及运行结果;关联关系的UML表示;依赖关系的UML表示简明示例;package dependency; public class UserServiceBean { public void save(User user){} public IDCard getIDCard(Integer userId){return null;} public void modify(){ Department department = new Department(); } } class IDCard{} class User{} class Department{};1.4 面向对象设计原则;;;;;;;;;;;;;;;;;;;;;;;;;;我们发现原来运行正常的相减功能发生了错误。原因就是类B无意中重写了父类的方法,造成原有功能出现错误。在实际编程中,我们常常会通过重写父类的方法完成新的功能,这样写起来虽然简单,但整个继承体系的复用性会比较差。特别是运行多态比较频繁的时候。 通用的做法是:原来的父类和子类都继承一个更通用的基类(抽象),去掉原有的继承关系,而是使用依赖、聚合或组合等关系。;;;;;;;;;;;;;;;;;;;;;;;;;;;;Unit 2 创建型设计模式;创建型模式概述;创建型模式思维导图;创建型模式;创建对象的几种方式;工厂模式;简单工厂模式模式动机;简单工厂模式模式定义;简单工厂模式模式角色;简单工厂模式模式分析;将对象的创建和对象本身的业务处理分离可以降低系统的耦合度,使得两??修改起来都相对容易。 在调用工厂类的工厂方法时,由于工厂方法是静态方法,使用起来很方便,可通过类名直接调用,而且只需要传入一个简单的参数即可,在实际开发中,还可以在调用时将所传入的参数保存在XML等格式的配置文件中,修改参数时无须修改任何Java源代码。 简单工厂模式最大的问题在于工厂类的职责相对过重,增加新的产品需要修改工厂类的判断逻辑,这一点与开闭原则是相违背的。 简单工厂模式的要点在于:当你需要什么,只需要传入一个正确的参数,就可以获取你所需要的对象,而无须知道其创建细节。 ;简单工厂模式模式分析(续);简单工厂模式模式分析(续);简单工厂模式示例;简单工厂模式示例(续);简单工厂模式模式应用;简单工厂模式属于GoF23吗?;工厂方法模式模式动机与模式定义;工厂方法模式结构及角色分析;工厂方法模式示例;工厂方法模式示例(续);抽象工厂模式模式动机与模式定义;抽象工厂模式类图(原版);抽象工厂模式结构及角色分析;抽象工厂模式模式分析;抽象工厂模式示例;单例模式模式动机与模式定义;单例模式结构及角色分析;单例模式示例;单例模式懒汉式与饿汉式;单例模式懒汉式与饿汉式(续);单例模式评价与扩展;原型模式模式动机与模式定义;原型模式结构及角色分析;原型模式模式实现;原型模式通用实现示例;原型模式专用实现示例;原型模式评价与扩展—浅克隆;原型模式评价与扩展—深克隆;建造者模式模式动机与模式定义;建造者模式原版类图(似乎不能实现);建造者模式结构及角色分析;建造者模式示例;建造者模式示例;建造者模式评价与扩展;创建型模式总结;Unit 3 结构型设计模式(上、下);结构型模式概述;外观模式模式动机;外观模式模式定义;外观模式结构及角色;外观模式示例;外观模式评价与扩展;适配器模式模式动机;适配器模式模式定义与角色;适配器模式类图(原版);适配器模式类适配器类图;类适配器模式要点分析;类适配器模式示例;对象适配器模式类图及要点;对象适配器模式示例;对象适配器模式双向适配示例;组合模式模式动机与模式定义;透

文档评论(0)

1亿VIP精品文档

相关文档