##Command模式 ###总结
将方法调用, 请求, 操作等封装到单一对象,
从而根据不同的请求对客户进行参数化和传递可供执行的方法调用
###例子 eg.1 (function(){ var CarManager = { requestInfo:function(model, id){}, buyVehicle: function(model, id){}, arrangeViewing: function (model, id) {} }; })()
eg.2
CarManager.execute = function(funcName){
return CarManager[funcName]&&
CarManager[funcName]
.apply(CarManager,[].slice.call(arguments,1));
}
###分析 1. 通过对象可以直接调用manager中的方法 2. 如果核心API有变动, 所有调用这些方法的对象都需要更改 3. 所以添加了eg.2 CarManager.execute("buyVehicle","Ford Escort", "453543"); 4. 将调用操作的对象与知道如何实现该操作的对象解耦 5. angularJS 的 service 是利用了这种思想吧?减压了controller