zoukankan      html  css  js  c++  java
  • 设计模式在实际业务应用中的介绍之——总结

    设计模式在实际业务应用中的介绍之——总结

    上面通过3篇文章的描述,分块介绍了下设计模式在实际项目中的应用,下面对此做一个简要的总结。

    大家都知道面向对象的一些核心概念,在此罗列出来以便增强一下对面向对象的认识。

    三大特性:封装、继承、多态;

    封装:隐藏对象的具体实现,通过公共方法暴露对象的功能

    继承:子类继承父类后复用父类的功能,通过子类继承也可以按需扩展父类的功能

    多态:同一类的实例的相同方法在不同的情况下有不同的表现形式,一般分为2种:编译时多态(方法重载);运行时多态(继承、方法重写、向上转型)


    类与类之间的关系:继承/泛化、实现、依赖、关联、聚合、组合

    继承/泛化:子类继承父类

    实现:实现类实现接口

    依赖:不持有引用,具体表现:局部变量,函数参数

    关联:持有引用,具体表现:成员变量, 箭头指向被关联类,可双向,一对多或多对多

    聚合:成员变量,关联是处于同一层次的,而聚合则 是整体和局部层次的

    组合:与聚合类似,程度更加强烈,一起存在


    七大原则:单元原则、开闭原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特原则、组合/聚合复用原则

    单一原则:每一个类应该专注于做一件事情。 即:高内聚,低耦合。

    开闭原则:一个对象对扩展开放,对修改关闭。即:对类的改动是通过增加代码进行的,而不是修改现有代码。

    里氏替换原则:在任何父类出现的地方都可以用它的子类来替代。

    依赖倒置原则:要依赖于抽象,不要依赖于具体实现。

    接口隔离原则:应当为客户端提供尽可能小的单独的接口,而不是提供大的总的接口。

    迪米特原则:一个对象应当尽量少地与其他对象之间发生相互作用,使得系统功能模块相对独立。

    组合/聚合复用原则:尽量使用组合/聚合的方式,而不是使用继承。

    多种设计模式:单例、建造者、原型、工厂方法、抽象工厂、适配器、装饰者、组合、桥接、外观、享元、代理、策略、
    观察者、迭代器、命令模式、备忘录、中介者、解释器、访问者、责任链、状态。

    每种的模式的作用及适用场景,由于内容较多,大家就感兴趣的模式自行查找资料进行学习并加以应用。


    回顾下自己在项目中对设计模式的应用,使用部分设计模式来解决项目中的实际问题,
    具体用到的模式有:单例、抽象工厂、工厂方法、外观或门面。


    为了集中处理权限验证、日志记录等通用功能也应用到了面向切面编程(AOP)的技术。

    通过这些技术的应用,可以极大的增强系统对业务变更的应变能力,系统编程的规范化,从而增加系统在业务级别的弹性。

  • 相关阅读:
    重构的信号
    枚举类返回Map键值对,绑定到下拉框
    js onclick函数中传字符串参数的问题
    python opencv3 矩形 圆形边框
    python opencv3 轮廓检测
    python opencv3 滤波器 卷积核
    python opencv3 窗口显示摄像头的帧
    python opencv3 显示一张图片
    python opencv3 获取摄像头视频
    python opencv3 视频文件的读写
  • 原文地址:https://www.cnblogs.com/maotou/p/design_model.html
Copyright © 2011-2022 走看看