JS设计模式——建造者模式
2015-09-01 16:32
549 查看
模式作用:
1,分步创建一个复杂的对象
2,解耦封装过程和具体创建的组件
3,无需关心组件如何组装
注意事项:
1,一定要一个稳定的算法进行支持
2,加工工艺是暴露的
建造者模式可以理解为:各司其职,拆解流程
<!--工作流程:白富美盖房子->包工头->工人->房子 -->
1,分步创建一个复杂的对象
2,解耦封装过程和具体创建的组件
3,无需关心组件如何组装
注意事项:
1,一定要一个稳定的算法进行支持
2,加工工艺是暴露的
建造者模式可以理解为:各司其职,拆解流程
<!--工作流程:白富美盖房子->包工头->工人->房子 -->
<meta charset="utf-8"> <script type="text/javascript"> //发生一个请求 白富美 //建造者模式 包工头 //完整的工程 工人 // 1.产出的东西是房子 // 2.baogongtou调用工人进行开工 而且他要很清楚工人们具体的某一个大项 // 3.工人是盖房子 工人可以建卧室,客厅,厨房 // 4.包工头只是一个借口而已 他不干活 他只对外说我能盖房子 function Fangzi(){ this.woshi=""; this.keting=""; this.chufang=""; } function Baogongtou(){ this.gaifangzi=function(gongren){ gongren.jian_woshi(); gongren.jian_keting(); gongren.jian_chufang(); } } function Gongren(){ this.jian_woshi=function(){ //console.log('卧室我盖好了'); alert('卧室我盖好了'); } this.jian_keting=function(){ alert('客厅我盖好了'); } this.jian_chufang=function(){ alert('厨房我盖好了'); } this.jiaogong=function(){ var _fangzi=new Fangzi(); _fangzi.woshi="ok"; _fangzi.keting="ok"; _fangzi.chufang="ok"; return _fangzi; } } var gongren=new Gongren; var baogongtou=new Baogongtou(gongren); baogongtou.gaifangzi(gongren); //主人要房子 var myfangzi=gongren.jiaogong(); console.log(myfangzi); </script>
相关文章推荐
- JS设计模式——构造函数模式
- JS设计模式——单例模式
- JS中String转数值
- JSP - Syntax
- JavaScript自定事件-原生代码
- 利用JS提交表单的几种方法和验证
- JSP
- JSON序列化反序列化
- jstl标签实现文字过长隐藏显示问题
- jsonp 跨域请求
- js获取验证码倒计时的实现方法
- JavaScript点击标题折叠文章内容
- JSTL
- Javascript2
- javascript
- JSP - Architecture
- js 实现map集合
- javascript实现document.getElementByClass的方法
- js获取select选中的标签option的值
- js实现简洁大方的二级下拉菜单效果代码