Skip to content

readingtfsc/DesignPattern

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 

Repository files navigation

设计模式 DesignPattern

对软件设计中普遍出现的问题所提出的解决方案.

1990年代由 埃里希·伽马 从建筑设计行业引入计算机科学领域.

设计模式分为三种:

1. 创建型模式:单例模式 工厂模式 ..
2. 结构型模式:装饰模式 代理模式 ...
3. 行为型模式:观察者模式 中介者模式 ...

UML:统一建模语言: 通过符号来描述模型元素或者叫模型实体(类.接口等..)以及模型元素之间的关系.

UML图分类

1. 用例图
2.静态结构图: 类图 对象图 包图 组件图 部署图
3.行为动态图: 交互图(时序图与协作图) 状态图 活动图

UML类图 : 用来描述类与类之间的关系,是UML图中的核心.

用来描述类本身的组成与其他类之间的静态关系.
类之间的关系:依赖 (泛化)继承 实现 关联 聚合 组合.

类之间的关系--依赖关系 Dependence :只要在类中用到了对方,那么他们之间就存在依赖关系

类之间的关系--泛化关系 Generalization :泛化关系实际上是继承关系.是属于依赖关系中的特例

如果 class A extends B ,那么他们之间存在泛化关系

类之间的关系--实现关系 Implements : A类实现了B接口,那么他们就是实现关系.属于依赖关系的特例.

如果 class A implements B , 那么他们之间存在实现关系

类之间的关系--关联关系 Association : 关联关系实际上就是类与类之间的联系.属于依赖关系中的特例.

关联关系具有向导行:双向关联和单向关联. 关联关系具有多重性: 有且只有一个 0或多个 0个或一个 m到n个 ...

类之间的关系--聚合关系 Aggregation : 表示整体与部分的关系,整体与部分可以分开.聚合关系是关联关系的特例. 所以,它具有向导性和多重性

例如: 一台电脑有 显示器 鼠标 键盘等组成.但是组成电脑的各个配件也可以从电脑上分离出来.

类之间的关系--组合关系 Composition : 也表示整体与部分的关系,但是整体与部分不可以分开. 是聚合关系的升级版.

例如: 实体 Person(整体) IDCard(部分) Head(部分),
Person 和 Head 是组合关系,整体与部分不可分离. Person 和 IDCard 是聚合关秀,整体与部分可以分离

设计模式的七大原则 Principle

单一设计原则:SRP :对于类来说,一个类应该只负责一项职责.
接口隔离原则:ISP :一个类不应该依赖它不需要的接口.
里氏替换原则:LSP

23种设计模式 DesignPattern

简单工厂模式
工厂方法模式
抽象工厂模式
单例模式
饿汉式单例模式
懒汉式单例模式

中介者模式

代理模式

装饰者模式:竹笋炒肉的成绩单

观察者者模式:气象台通知气象信息

策略模式: 刘备娶娇妻,凭的是锦囊,苦的是赵云.

模板模式: 悍马模型

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published