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

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

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

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

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

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

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

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


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

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

    实现:实现类实现接口

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

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

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

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


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

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

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

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

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

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

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

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

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

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


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


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

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

  • 相关阅读:
    SVN服务器搭建(一)
    排序算法二:冒泡排序
    【LeetCode】136. Single Number
    【LeetCode】217. Contains Duplicate
    【LeetCode】189. Rotate Array
    【LeetCode】122. Best Time to Buy and Sell Stock II
    【LeetCode】26. Remove Duplicates from Sorted Array
    【LeetCode】20. Valid Parentheses
    【LeetCode】680. Valid Palindrome II
    【LeetCode】345. Reverse Vowels of a String
  • 原文地址:https://www.cnblogs.com/maotou/p/design_model.html
Copyright © 2011-2022 走看看