初识MVC

107 阅读2分钟

MVC的三个对象,用途,伪代码示例

MVC是一种设计模式。它展示了一种将各用途的代码分工的做法,三个对象紧密联系但是又互相独立,这样可以做到代码的模块化,对维护与升级都提供了便利。

// M - Model  
const m = {
    // 负责数据的控制
}
// V - View
const v = {
    // 负责视图的设计
}
const c = {
    // 负责控制模型与界面间的交互
}

EventBus 有哪些API,用途,伪代码

EventBus是事件总线,用于联通多个模块之间的通信。

class EventBus{
    on(){} // 订阅事件
    trigger(){} // 触发事件
    off(){} // 取消订阅
}

表驱动编程 用途

表驱动编程是一种可以不适用if-else结构来查找信息的一种方法,优点是数据和逻辑分离

// 创建一个阿拉伯数字转换成汉字数字的函数,如果用if-else要写很久
const trans = function(value){
    this.number = value
    if(this.number === 1){
        this.results = '一'
    }else if(this.number === 2){
        this.results = '二'
    }
    // ......
    else if(this.number === 10){
        this.results = '10'
    }
}
// 使用表驱动编程代替if-else
const transMap = ['零','一','二','三','四','五','六','七','八','九','十']
// 这样直接用transMap的key就可以查找到对应的汉字了。

如何理解模块化

模块化(modular)编程,是强调将计算机程序的功能分离成独立的、可相互改变的“模块”(module)的软件设计技术,它使得每个模块都包含着执行预期功能的一个唯一方面(aspect)所必需的所有东西。 ————wikipedia

模块化可以使代码根据功能、需求不同分为不同的模块,这样在开发效率和维护效率上都会有很大的提高。比如,如果要修改某个功能,那么不用去翻一遍整个项目的代码,只需要找到包含相应功能模块的代码就可以进行修改,减少了时间,也让后期的维护更加简单。如果是多人开发的情况,也可以避免被同事覆盖或修改代码。