开放-封闭原则
不修改源码,进行拓展
Function.prototype.before = function( beforeFn ) {
var self = this
return function(){
beforeFn.apply(this, arguments)
return self.apply(this, arguments)
}
}
Function.prototype.after= function( afterFn) {
var self = this
return function(){
var result= afterFn.apply(this, arguments)
self.apply(this, arguments)
return result
}
}
单一职责原则
将方法最小粒度化
最少知识原则
避免方法直接联系
中介者模式就是体现这一原则
网友评论