写点什么

案例讲解,设计模式定义

用户头像
秤须苑
关注
发布于: 2020 年 07 月 01 日

第五课

上章节回顾:

1.软件设计第一原则:

    1.开/闭原则(OCP):不需要修改软件实体(类、模块、函数等),就能实现功能扩展,关键字:抽象

        1.对于扩展是开放的

        2.对于更改是封闭的



2.软件设计第二原则:依赖倒置原则(DIP)

    DIP:Dependency Inversion Principle

        1.高层模块不能依赖低层模块,而是大家都依赖于抽象;

        2.抽象不能依赖实现,而是实现依赖抽象

3.OOD 原则三:Listov替换原则(LSP)

        简而言之: 子类型必须能够替换调他们的基类型

4.OOD原则四 : 单一职责原则(SRP)

    SRP - Single Responsibiliy Principle

    1.又称为”内聚性原则“,意为:一个模块的组成元素之间的功能相关性

    2.将它与引起一个模块发生变化的操作关联,就形成了:一个类只能有一个引起他变化的原因

5.OOD原则五:接口分离原则(ISP)

    ISP : Interface Segregation Principle

   1.不应该强迫客户程序依赖他们不需要的方法

    ISP和SRP是相关的,都和”内聚性“有关

    SRP指出应该如何设计一个类,只能有一种原因才能促使类发生改变。

    ISP指出应该如何设计一个接口,从客户需要的出发,强调不用让客户看到他们不需要的方法



作业练习讲解。

案例:反应式编程框架Flower的设计

1.





2.为什么Flower可以显著提升系统性能





Flower实现异步的基础是Akka的Actor





flwoer的分布式异步微服务解决方案





设计模式的作用





设计模式的定义:

1.什么是设计模式?

     a.每一种模式都描述了一种问题的通用解决方案。

     b.设计模式是一种可重复使用的解决方案

2.设计模式的四个部分:

    a.模式的名称:由少量字组成的名称,有助于我们表达我们的设计

    b.待解决的问题:描述何时需要运用这种模式,以及运用模式的环境

    c.解决方案:描述了组成设计的元素(类和对象)、他们的关系、职责以及合作。但这种解决方案是抽象的,不代表具体实现。

    d.结论:运用这种方案所带来的利弊。主要指对系统的弹性、扩展性、可移植性的影响



设计模式的分类:

从功能分

    1.创建模式:对类的实例化过程的抽象

    2.结构模式:将类或对象结合在一起形成更大的结构

    3.行为模式:对在不同的对象之间划分责任和算法的抽象化

从方式分:

    类模式:以继承的方式实现模式,静态的

    对象模式:以组合的方式实现模式,动态的

    

设计模式案例:

    1.简单工厂模式

    2.单例模式

    3.适配器模式



用户头像

秤须苑

关注

还未添加个人签名 2020.05.12 加入

还未添加个人简介

评论

发布
暂无评论
案例讲解,设计模式定义