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

网站的投资和建设项目站群服务器

网站的投资和建设项目,站群服务器,网页链接视频怎么下载到本地,做网站推广优化转自#xff1a;https://www.cnblogs.com/lthIU/p/5860607.html 针对外观模式#xff0c;在项目开发和实际运用中十分频繁#xff0c;但是其极易理解#xff0c;下面就简要介绍一下。 一、概念介绍 外观模式#xff08;Facade#xff09;,他隐藏了系统的复杂性#xff0… 转自https://www.cnblogs.com/lthIU/p/5860607.html 针对外观模式在项目开发和实际运用中十分频繁但是其极易理解下面就简要介绍一下。 一、概念介绍   外观模式Facade,他隐藏了系统的复杂性并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个统一的访问接口这个接口使得子系统更容易被访问或者使用。  二、角色及使用场景   简单来说该模式就是把一些复杂的流程封装成一个接口供给外部用户更简单的使用。这个模式中设计到3个角色。   1.门面角色外观模式的核心。它被客户角色调用它熟悉子系统的功能。内部根据客户角色的需求预定了几种功能的组合。   2.子系统角色:实现了子系统的功能。它对客户角色和Facade时未知的。它内部可以有系统内的相互交互也可以由供外界调用的接口。   3.客户角色:通过调用Facede来完成要实现的功能。   使用场景   1- 为复杂的模块或子系统提供外界访问的模块   2- 子系统相互独立   3- 在层析结构中可以使用外观模式定义系统的每一层的入口。 三、实例   下面我们就通过一个简单的例子来实现该模式。   每个Computer都有CPU、Memory、Disk。在Computer开启和关闭的时候相应的部件也会开启和关闭所以使用了该外观模式后会使用户和部件之间解耦。如 包体的创建 代码实现 首先是子系统类  【代码清单--1】 1 package com.huawei.facadeDesign.children;2 3 import org.apache.log4j.Logger;4 5 /**6 * cpu子系统类7 * author Administrator8 *9 */ 10 public class CPU 11 { 12 public static final Logger LOGGER Logger.getLogger(CPU.class); 13 public void start() 14 { 15 LOGGER.info(cpu is start...); 16 } 17 18 public void shutDown() 19 { 20 LOGGER.info(CPU is shutDown...); 21 } 22 } View Code 【代码清单--2】 1 package com.huawei.facadeDesign.children;2 3 import org.apache.log4j.Logger;4 5 /**6 * Disk子系统类7 * author Administrator8 *9 */ 10 public class Disk 11 { 12 public static final Logger LOGGER Logger.getLogger(Disk.class); 13 public void start() 14 { 15 LOGGER.info(Disk is start...); 16 } 17 18 public void shutDown() 19 { 20 LOGGER.info(Disk is shutDown...); 21 } 22 } View Code 【代码清单--3】 1 package com.huawei.facadeDesign.children;2 3 import org.apache.log4j.Logger;4 5 /**6 * Memory子系统类7 * author Administrator8 *9 */ 10 public class Memory 11 { 12 public static final Logger LOGGER Logger.getLogger(Memory.class); 13 public void start() 14 { 15 LOGGER.info(Memory is start...); 16 } 17 18 public void shutDown() 19 { 20 LOGGER.info(Memory is shutDown...); 21 } 22 } View Code 然后是门面类Facade 【代码清单--4】 1 package com.huawei.facadeDesign.facade;2 3 import org.apache.log4j.Logger;4 5 import com.huawei.facadeDesign.children.CPU;6 import com.huawei.facadeDesign.children.Disk;7 import com.huawei.facadeDesign.children.Memory;8 9 10 /** 11 * 门面类核心 12 * author Administrator 13 * 14 */ 15 public class Computer 16 { 17 public static final Logger LOGGER Logger.getLogger(Computer.class); 18 19 private CPU cpu; 20 private Memory memory; 21 private Disk disk; 22 public Computer() 23 { 24 cpu new CPU(); 25 memory new Memory(); 26 disk new Disk(); 27 } 28 public void start() 29 { 30 LOGGER.info(Computer start begin); 31 cpu.start(); 32 disk.start(); 33 memory.start(); 34 LOGGER.info(Computer start end); 35 } 36 37 public void shutDown() 38 { 39 LOGGER.info(Computer shutDown begin); 40 cpu.shutDown(); 41 disk.shutDown(); 42 memory.shutDown(); 43 LOGGER.info(Computer shutDown end...); 44 } 45 } View Code 最后为客户角色。 【代码清单--5】 1 package com.huawei.facadeDesign;2 3 import org.apache.log4j.Logger;4 5 import com.huawei.facadeDesign.facade.Computer;6 7 /**8 * 客户端类9 * author Administrator 10 * 11 */ 12 public class Cilent { 13 public static final Logger LOGGER Logger.getLogger(Cilent.class); 14 public static void main(String[] args) 15 { 16 Computer computer new Computer(); 17 computer.start(); 18 LOGGER.info(); 19 computer.shutDown(); 20 } 21 22 } View Code 【代码清单--6】运行结果 从上面的实例来看有了这个Facade类也就是Computer类用户就不用亲自去调用子系统中的Disk,Memory、CPU类了不需要知道系统内部的实现细节甚至都不用知道系统内部的构成。客户端只需要跟Facade交互就可以了。 四、优点   - 松散耦合   使得客户端和子系统之间解耦让子系统内部的模块功能更容易扩展和维护   - 简单易用   客户端根本不需要知道子系统内部的实现或者根本不需要知道子系统内部的构成它只需要跟Facade类交互即可。   - 更好的划分访问层次   有些方法是对系统外的有些方法是系统内部相互交互的使用的。子系统把那些暴露给外部的功能集中到门面中这样就可以实现客户端的使用很好的隐藏了子系统内部的细节。 五、延伸及应用补充   ...  希望对大家的学习有帮助请多指教。   转载于:https://www.cnblogs.com/Hermioner/p/10244901.html
http://www.zqtcl.cn/news/864078/

相关文章:

  • 企业网站建设功能模块discover wordpress
  • 网站建设结课做诱导网站
  • 网站开发与设计难嘛青州网站建设推广
  • 网站开发程序员工资谷歌推广网站建设
  • 江门网页建站模板金富通青岛建设工程有限公司网站
  • 网站后台账户如何做会计分录做传奇开服一条龙网站哪个好
  • 天门市网站建设seo平台建设网站公司
  • php网站怎么做302织梦网站有会员系统怎么做
  • 清远建设局网站安阳吧百度贴吧
  • 做什么软件做网站效率最好网站公司建设都招聘那些职位
  • 缙云建设局网站深圳营销型网站设计
  • 企业网站制作价格成都高端网站建设公司哪家好
  • wordpress+做仿站网站建设费用属于业务宣传费吗
  • 昆明企业网站制作wordpress移动端插件menu
  • 长沙网站设计培训学校南宁建设网站哪里好
  • 提高基层治理效能全国seo搜索排名优化公司
  • 如何建设网站简介WordPress集成tipask
  • 青海网站开发公司建筑公司的愿景怎么写
  • 建设银行集团网站首页优化科技
  • dede 汽车网站网站上的彩票走势图是怎么做的
  • 网站内容营销呼市推广网站
  • 南宁网站建设价格医院有关页面设计模板
  • 城乡住房和城乡建设厅网站湖州公司网站建设
  • h5响应式的网站建站空间哪个好
  • 徐州网站建设与推广公众号开发技术风险
  • 男女做差差事的视频网站自己做一个小程序要多少钱
  • 临沂网站建设哪家好重庆建设招标造价信息网站
  • 筑巢网络官方网站深圳网站开发设计公司排名
  • 镇江市网站制作网页的代码实例
  • 吉林省网站制作公司有哪些唐山设计网站公司