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

网站建设制作免费咨询厦门室内装修公司

网站建设制作免费咨询,厦门室内装修公司,怎么用上线了做网站,乐趣公园 wordpress门面模式(Facade Pattern)又叫作外观模式#xff0c;提供了一个统一的接口#xff0c;用来访问子系统中的一群接口。其主要特征是定义了一个高层接口#xff0c;让子系统更容易使用#xff0c;属于结构型设计模式。 其实#xff0c;在日常编码工作中#xff0c;我们都在有…门面模式(Facade Pattern)又叫作外观模式提供了一个统一的接口用来访问子系统中的一群接口。其主要特征是定义了一个高层接口让子系统更容易使用属于结构型设计模式。 其实在日常编码工作中我们都在有意无意地大量使用门面模式。但凡只要高层模块需要调度多个子系统(2个以上类对象)我们都会自觉地创建一个新类封装这些子系统提供精简的接口让高层模块可以更加容易地间接调用这些子系统的功能。 来个简单的demo 我u有以下三个service public class ServiceA { public void doA(){ System.out.println(do ServiceA); } } public class ServiceB { public void doB(){ System.out.println(do ServiceB); } } public class ServiceC { public void doC(){ System.out.println(do ServiceC); } } 在没有引入门面模式的时候我们是这么调用的 public class Client { public static void main(String[] args) { ServiceA serviceA new ServiceA(); ServiceB serviceB new ServiceB(); ServiceC serviceC new ServiceC(); serviceA.doA(); serviceB.doB(); serviceC.doC(); } } 没啥毛病啊结合到spingmvc开发这些service交给spring管理根本不用自己new了直接注入到controller就可以但是如果10个地方都用了这三个service呢这10个controller里都注入一下这时候考虑优化——我可以新建一个service持有这个三个service不就ok了吗 public class ServiceFacade { //是不是很像我们controller里注入各种service? private ServiceA serviceA new ServiceA(); private ServiceB serviceB new ServiceB(); private ServiceC serviceC new ServiceC(); public void doA() { serviceA.doA(); } public void doB() { serviceB.doB(); } public void doC() { serviceC.doC(); } } 客户端就变成了 public class Client { public static void main(String[] args) { //轻轻松松的搞定只需要创建门面这个对象即可 ServiceFacade serviceFacade new ServiceFacade (); serviceFacade.doA(); serviceFacade.doB(); serviceFacade.doC(); } } 门面模式中的角色 由上图可以看到门面模式主要包含2个角色。 外观角色(Facade)也叫作门面角色是系统对外的统一接口。子系统角色(Service)可以同时有一个或多个Service。每个Service都不是一个单独的类而是一个类的集合。Service们并不知道Facade的存在对于Service们而言Facade 只是另一个客户端而已(即Facade对ServiceA、ServiceB、ServiceC透明)。 门面模式的扩展 优点 ● 减少系统的相互依赖   想想看如果我们不使用门面模式外界访问直接深入到子系统内部相互之间是一种强耦合关系你死我就死你活我才能活这样的强依赖是系统设计所不能接受的门面模式的出现就很好地解决了该问题所有的依赖都是对门面对象的依赖与子系统无关。 ● 提高了灵活性   依赖减少了灵活性自然提高了。不管子系统内部如何变化只要不影响到门面对象任你自由活动。 ● 提高安全性   想让你访问子系统的哪些业务就开通哪些逻辑不在门面上开通的方法你休想访问到 。 缺点 当增加子系统和扩展子系统行为时可能容易带来未知风险。 不符合开闭原则。 某些情况下可能违背单一职责原则。
http://www.w-s-a.com/news/281737/

相关文章:

  • 网站改版seo无锡有多少家公司
  • h5美食制作网站模板下载wordpress大学百度云
  • 零陵做网站建立网站的公司平台
  • 某企业电子商务网站建设网站开发实验结论
  • 自己做的网站突然打不开杭州哪些做网站公司好
  • 株洲专业建设网站免费cms内容管理系统
  • 网上建立网站赚钱网站建设方案书纯文字
  • 专业网站设计哪家好it外包合同模板
  • 个人网站备案都需要什么中小企业服务网
  • 佛山网站建设哪个在公司网站投简历该怎么做
  • 八戒网站做推广老域名全部失效请拿笔记好
  • iss服务器网站建设甘肃建设厅网站执业注册中心
  • 域名访问网站 过程网站 免费 托管运营
  • 下单的网站建设教程wordpress php7.1
  • 爱网站查询怎么做网站的图片跳转
  • 阿里云建站百度收录吗北京的设计公司排名
  • 网站制作方案包含哪些内容布吉网站建设方案
  • 吉林省建设安全信息网站宜宾市建设工程质量监督站网站
  • 镇江网站建设远航网络帝国cms 网站地图 自定义
  • 金融网站模板源代码net网站是国际域名吗
  • 北京高端网站建设价格企业网络托管公司
  • 规范门户网站建设没有网站可以做域名解析吗
  • pc 手机网站源码织梦网站修改教程视频教程
  • 江苏省建设厅副厅长网站济南网络建站模板
  • 工信部网站备案举报做网站竞争大吗
  • 网站建设经费管理注册了域名怎么做网站
  • 哪个着陆页网站福田做网站的公司
  • 网站备案完成后该如何做宁波公司网站建设价格
  • 标识标牌网站怎么做手机网站开发session
  • 怎样建设网站是什么样的广州做和改版网站的公司