当前位置: 首页 > news >正文

有专门教做家具的网站/大数据查询个人信息

有专门教做家具的网站,大数据查询个人信息,做彩票网站推广,z-blog做企业网站外观模式(Facade)为了小小的纠正一下个人的口语,于是有道了一下:[fəsɑ:d] 对于外观模式就是为了子系统对外提供的一组接口提供一个统一的界面,似的其他系统对该系统访问都通过一个同一段的界面来完成。 外观模式主要…

外观模式(Facade)为了小小的纠正一下个人的口语,于是有道了一下:[fə'sɑ:d]

对于外观模式就是为了子系统对外提供的一组接口提供一个统一的界面,似的其他系统对该系统访问都通过一个同一段的界面来完成。

外观模式主要由三部分组成,一个中间类,就是Facade类,负责联系子系统提供对外的接口,一个是多个子系统,一个是客户端负责通过Facade类对子系统的功能进行操作

这里通过简单的工厂生产帽子,被子,笔卖给消费者的过程,并且用Facade类的前后作对比来简单的理解Facade模式:

Facade模式的原理图:

对UML部分理解更清楚了一点,发现前面的UML好多不合理的地方,可以学习

http://blog.csdn.net/zhengzhb/article/details/7187278


普通基础的设计:

[java] view plaincopy
  1. package com.designpattern.facade;  
  2.   
  3. public class HatFactory {  
  4.     public static void saleHat() {  
  5.         System.out.println("sale a hat");  
  6.     }  
  7. }  

[java] view plaincopy
  1. package com.designpattern.facade;  
  2.   
  3. public class CapFactory {  
  4.     public static void saleCap() {  
  5.         System.out.println("sale a cap");  
  6.     }  
  7. }  

[java] view plaincopy
  1. package com.designpattern.facade;  
  2.   
  3. public class PenFactory {  
  4.     public static void salePen() {  
  5.         System.out.println("sale a pen");  
  6.     }  
  7. }  

[java] view plaincopy
  1. package com.designpattern.facade;  
  2.   
  3. public class Client {  
  4.     public static void main(String[] args) {  
  5.         CapFactory.saleCap();  
  6.         HatFactory.saleHat();  
  7.         PenFactory.salePen();  
  8.     }  
  9. }  

这样如果客户想买各种商品的话就必须直接和厂家联系,然后买商品,实现起来却是很是麻烦

但是如果引入了如下的Facade类就简单多了,具体操作如下:

[java] view plaincopy
  1. package com.designpattern.facade;  
  2.   
  3. public class Facade {  
  4.     public static void saleHat() {  
  5.         HatFactory.saleHat();  
  6.     }  
  7.   
  8.     public static void saleCap() {  
  9.         CapFactory.saleCap();  
  10.     }  
  11.   
  12.     public static void salePen() {  
  13.         PenFactory.salePen();  
  14.     }  
  15. }  

[java] view plaincopy
  1. package com.designpattern.facade;  
  2.   
  3. public class Client {  
  4.     public static void main(String[] args) {  
  5.         Facade.saleCap();  
  6.         Facade.saleHat();  
  7.         Facade.salePen();  
  8.     }  
  9. }  

这样在客户买商品的时候只要去Facade商店就行了,直接到商店想买什么就买什么,具体商店和厂家怎么联络的客户是不用去理会的,这样就对于客户端程序员提供了很大的简便可行。一些很好的持久层的框架也是用这样一个设计模式达到一个很好的用户体验。

外观模式通过提供一个统一的对外接口,避免的外部系统和子系统之间的直接联系从而降低了系统间的依赖和复杂度。
但是限制了外部系统对子系统调用的灵活性,只能按照外观类中提供的方式对子系统进行调用。


http://www.lbrq.cn/news/750547.html

相关文章:

  • 平顶山网站建设费用/推广营销企业
  • 做基因互作的网站/网站seo检测工具
  • 卡盟网站建设/好消息疫情要结束了
  • 岚县网站建设/网络公司网络营销推广方案
  • 厂房设计装修公司/盛大游戏优化大师
  • 杭州网站建站/地推app接任务平台
  • 装修广告做哪个网站最好看/网销怎么做才能做好
  • 汕头建站平台/公众号营销
  • 有哪些做汽车变速箱的门户网站/百度一下官方入口
  • 广州软件开发公司排名/东莞seo网站制作报价
  • 专业做阿里巴巴网站的公司/网店怎么开
  • 乐山 网站建设/百度推广开户费
  • 做进口产品的网站/杭州seo培训
  • 怎么制作网站模板/如何自己开发一个平台
  • 模板做的网站不好优化/泰安seo公司
  • 长沙网站开发培训学校/百度的合作网站有哪些
  • 做网站时图片的分辨率是多少/怎么制作一个网站
  • 移动网站建设的前期规划内容/百度关键词排名突然下降很多
  • 专注外贸建站/上海seo优化公司kinglink
  • 浏阳做网站报价/站长之家站长工具综合查询
  • 蚌埠市重点工程建设管理局网站/营销app
  • 卡密网站怎么做/北京网站设计公司
  • 模板做图 网站有哪些内容/市场调研问卷调查怎么做
  • 网站开发跟app开发的差别/搜狗官网
  • 西湖区外贸网站建设/宁波优化关键词首页排名
  • 国外优质网站/长春关键词优化报价
  • 怎么开发聊天软件/青岛优化网站关键词
  • 京东购物网站怎么做/网址域名注册
  • 做娱乐网站彩票代理/百度搜索量查询
  • 合肥seo网站多少钱/seo页面代码优化
  • 在职老D渗透日记day19:sqli-labs靶场通关(第26a关)get布尔盲注 过滤or和and基础上又过滤了空格和注释符 ‘)闭合
  • 从需求到部署全套方案:餐饮服务许可证数据可视化分析系统的大数据技术实战
  • React 基础实战:从组件到案例全解析
  • 44.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--扩展功能--集成网关--网关集成认证(三)
  • 基于DSP+ARM+FPGA架构的储能协调控制器解决方案,支持全国产化
  • 《智能体(Agent)速记指南》