码迷,mamicode.com
首页 > 其他好文 > 详细

6.3设计模式

时间:2020-06-03 23:08:09      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:工厂模式   分类   初始   接收   能力   执行   ``   耦合   mvc   

# 一、设计模式的概念和介绍
1. 什么是设计模式
    - 经过大量验证,实验,总结,形成的一套固定的用来解决某类问题的方法
    - 是一套经过反复使用、多人知晓的、经过分类的、代码设计经验的总结
    - 需求:批量创建相同特点的对象
        - 封装,创建对象,设置属性或方法,属性传参,返回对象
        - 工厂模式
        ```js
        function Create(n, s, a){
            var obj = {};
            obj.name = n;
            obj.sex = s;
            obj.age = a;
            return obj;
        }
        var o1 = Create("admin","1",17);
        var o2 = Create("admin","1",17);
        var o3 = Create("admin","1",17);
        ```
2. 有哪些设计模式:
    - 构造器模式,模块化模式,暴露模块模式,单例模式,中介者模式,原型模式,命令模式,外观模式,工厂模式,Mixin模式,装饰模式,亨元(Flyweight)模式,MVC模式,MVP模式,MVVM模式,组合模式,适配器模式,外观模式,观察者模式,迭代器模式,惰性初始模式,代理模式,建造者模式
3. 设计模式和面向对象编程的关系
    - 面向对象编程是一门内功心法
    - 设计模式就是对应的招式
# 二、具体的设计模式讲解
1. 单例模式
    - 单个实例
    - 在面向对象方式编程时,经过多次操作,只有一个对象被创建,是单例模式
    - 多次new只有一个实例被创建
2. 组合模式
    - 组合对象
        - 将多个对象按照一定的规律组合,可以实现批量操作的功能
        - 简化了操作,但耗费了更多的性能,递归的思想
    - 使用场景
        - 组合模式,将对象组合成树状结构
        - DOM也是树状结构
        - 组合模式用来操作动态的HTML,非常适合的
3. 观察者模式
    - 发布订阅者模式
        - 发布者
            - 发布信息
        - 订阅者
            - 接收信息,根据信息内容作出对应的处理
    - 实现广播通信,一个发布者,多个接收者   
    - 订阅者的耦合非常低,可扩展能力非常强,可以随时加入或离开
    - 一对多的关系
4. 拓展
    - 策略模式
        - 策略:计划,规划
        - 提前预置某些状态的处理功能,根据不同的状态决定哪个功能被调用
    - 适配器模式
        - 适配器,电源适配器:将不符合规范的内容,包装成符合规范的内容
        - 富士红工厂
            - 橘子手机:打电话,玩游戏,听歌
            - 橘子平板:玩游戏,听歌
            - 橘子mp3:听歌,电子书
            - 橘子......
            - 测试模块
                - 听歌
                - 玩游戏
                - 打电话
                - 电子书
    - 代理模式
        - 代理,快递员,代替某人完成某事
        - 代理系统的内置功能的执行,拦截数据,记录,或另做他用,或加工后使用
            - 功能A 调用了 功能B 时,有数据传递
                - 记录传递了什么数据
                - 将传递的数据做二次使用
                - 对传递的数据进行加工
    - MVC模式
        - MVC原本是一种后台语言中的设计模式
        - M:module,模块层,管理的是数据
        - V:view,视图层,表现,呈现给用户的页面
        - C:control,控制器层,逻辑,用来处理逻辑,根据不同的指令,选择不同的数据,在不同的视图中呈现
        - 用户,调用控制器中的指令,控制器根据指令去取module层中的数据,暂存;再去view层中取出对应的视图,将数据发给视图,由视图做渲染
    - 工厂模式

6.3设计模式

标签:工厂模式   分类   初始   接收   能力   执行   ``   耦合   mvc   

原文地址:https://www.cnblogs.com/xiaokeai233/p/13040627.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!