前端:浅析MVC

浅析MVC

一. 了解MVC

(一)MVC含义编程

  1. Model:数据模型
  2. View:视图
  3. Controller:控制器

(二)分别作什么?数组

var Model= {
    data:{},    //绑定数据
    init: function(){},     //增删改查
    add: function(){},
    delete: function(){},
    get:: function(){}
}
var View={
    el:'',  //挂载元素
    init:: function(){},    //初始化
    template:'',            //模板
    render:: function(){}   //渲染函数
}
var controller = {
    init(): function{},         //初始化
    bindEvents: function(){},   //绑定事件
}

二. eventBus

(一)API架构

  1. on
  2. off
  3. emit (trigger)

(二)使用方法模块化

  1. 绑定事件 eventBus.on()函数

    eventBus.on("eventName",callback)
    //参数依次为 事件名,回调函数名
  2. 触发事件 eventBus.emit()调试

    eventBus.emit("eventName",[...args])
    //参数依次为 事件名 参数数组
  3. 解绑事件 eventBus.off()code

    eventBus.off("eventName",callback)
    //参数依次为 事件名,回调函数名

三. 表驱动编程

(一)定义:事件

  • 表驱动法是一种编程模式(scheme)——从表里面查找信息而不使用逻辑语句(if和case)。事实上,凡是能经过逻辑语句来选择的事物,均可以经过查表来选择。对简单的状况而言,使用逻辑语句更为容易和直白。但随着逻辑链的愈来愈发杂,查表法也就愈发显得更具吸引力。

(二)举例:开发

  • 不使用表编程:get

    if(flg==1){
        add1()
    }
    else if(flg==2){
        add2()
    }
    else if(flg==3){
        add3()
    }
    else if(flg==4){
        add4()
    }
    else{
        add5()
    }
  • 使用表编程

    var obj={
        1:add1,
        2: add2,
        3:add3,
        4:add4,
        5:add5,
    }
    obj[flg]()

(三)表编程的优势

  1. 提升了程序的可读性。一个消息如何处理,只要看一下驱动表就知道,很是明显。
  2. 减小了重复代码。
  3. 下降了复杂度。
  4. 程序有一个明显的主干。

四. 模块化

模块化编程是很是重要的一种编程模式,优点以下

  • 多人协做互不干扰
    模块化避免了变量污染,而且可使得分工更加容易
  • 灵活架构,焦点分离
    能够将独立的功能从主干中分离开来单独开发,增长效率
  • 方便模块间组合、分解 、解耦
    下降各个功能模块间的耦合度,方便维护和管理
  • 方便单个模块功能调试、升级
相关文章
相关标签/搜索