Vue就是这样的一套快捷的框架,它可以简单有效的解决上述所有问题,本课程将会由浅入深的为
你讲解vue的使用和前后端分离开发的强大之处。
设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计
模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
MVC 是后端编程语言中一个非常经典的设计模式。
我们平时开发的静态页面就是V层,视图(view);帮助视图改变,并且发送数据给后台的叫C层,控
制器(controller);分类储存数据的是M层,模型(Model)
传统的MVC开发模式 , 这里你会发现一个非常有意思的情况就是:帮助视图做改变本来应该是前端
的事。但是现在归为控制器中了。不分离式开发的时候,控制器和模型都是在后端的。
单例模式
这种设计模式的思想是确保一个类只有唯一实例,一般用于全局缓存,比如全局window,唯一登
录浮窗等。采用闭包的方式实现如下:
var single = (function(){
let instance;
function getInstance(){
// 如果该实例存在,则直接返回,否则就对其实例化
if( instance=== undefined ){
instance= new Construct();
}
return instance;
}
function Construct(){
// ... 生成单例的构造函数的代码
}
return {
getInstance : getInstance
}
})();
工厂模式
工厂模式是创建对象的常用设计模式,为了不暴露创建对象的具体逻辑,将逻辑封装在一个函数
中,这个函数就称为一个工厂。本质上是一个负责生产对象实例的工厂。工厂模式根据抽象程度的不同可以分为:简单工厂,工厂方法和抽象工厂。通常用于根据权限生成角色的场景,抽象工厂方法的实现如下:
//安全
//工厂方法函数的原型中设置所有对象的构造函数
UserFactory.prototype = {
SuperAdmin: function() {
this.name = "超级管理员",
this.viewPage = ['首页', '通讯录', '发现页', '应用数据', '权限管理']
},
Admin: function() {
this.name = "管理员",
this.viewPage = ['首页', '通讯录', '发现页', '应用数据']
},
NormalUser: function() {
this.name = '普通用户',
this.viewPage = ['首页', '通讯录', '发现页']
}
}
//调用
let superAdmin = UserFactory('SuperAdmin');
let admin = UserFactory('Admin')
let normalUser = UserFactory('NormalUser')
策略模式
策略模式的本意将算法的使用与算法的实现分离开来,避免多重判断调用哪些算法。适用于有多个
判断分支的场景,如解决表单验证的问题。你可以创建一个validator对象,有一个validate()方法。这个方法被调用时不用区分具体的表单类型,它总是会返回同样的结果——一个没有通过验证的列表和错误信息。实现方式如下:
// 对于vip客户
function vipPrice() {
this.discount &#