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

承接网站建设服务郑州电商运营培训

承接网站建设服务,郑州电商运营培训,当地建设局网站,宁波网络营销公司有哪些文章目录 外观模式介绍实现javarustrust仓库 外观模式 外观模式#xff08;Facade Pattern#xff09;隐藏系统的复杂性#xff0c;它为子系统中的一组接口提供一个统一的高层接口#xff0c;使得这些接口更加容易使用。外观模式通过封装子系统内部的复杂性#xff0c;提… 文章目录 外观模式介绍实现javarustrust仓库 外观模式 外观模式Facade Pattern隐藏系统的复杂性它为子系统中的一组接口提供一个统一的高层接口使得这些接口更加容易使用。外观模式通过封装子系统内部的复杂性提供一个简单的接口使得外部调用者无需了解子系统内部的处理细节就可以完成复杂的操作。 举个例子 就像电脑的usb接口自己内部实现了复杂的usb协议自己却只提供了接口让我们能够即插即用向我们屏蔽了底层协议的细节。 介绍 意图为子系统中的一组接口提供一个一致的界面外观模式定义了一个高层接口这个接口使得这一子系统更加容易使用。 主要解决降低访问复杂系统的内部子系统时的复杂度简化客户端之间的接口。 应用实例 去医院看病可能要去挂号、门诊、划价、取药让患者或患者家属觉得很复杂如果有提供接待人员只让接待人员来处理就很方便。 优点 1、减少系统相互依赖。 2、提高灵活性。 3、提高了安全性。 缺点不符合开闭原则如果要改东西很麻烦继承重写都不合适。 实现 我们将创建一个 Shape 接口和实现了 Shape 接口的实体类。下一步是定义一个外观类 ShapeMaker。 我们采用把所有的实现类封装在shapemaker由shapemaker提供统一的接口使我们能够方便调用。 ShapeMaker 类使用实体类来代表用户对这些类的调用。FacadePatternDemo 类使用 ShapeMaker 类来显示结果。 外观模式的 UML 图 java 步骤 1 创建一个接口。 Shape.java public interface Shape {void draw(); }步骤 2 创建实现接口的实体类。 Rectangle.java public class Rectangle implements Shape {Overridepublic void draw() {System.out.println(Rectangle::draw());} }Square.java public class Square implements Shape {Overridepublic void draw() {System.out.println(Square::draw());} }Circle.java public class Circle implements Shape {Overridepublic void draw() {System.out.println(Circle::draw());} }步骤 3 创建一个外观类,这个外观类中封装装了上述实现类的方法这样我们就可以通过外观类中提供的方法间接调用底层继承shape抽象类的实体类实现的方法。 ShapeMaker.java public class ShapeMaker {private Shape circle;private Shape rectangle;private Shape square;public ShapeMaker() {circle new Circle();rectangle new Rectangle();square new Square();}public void drawCircle(){circle.draw();}public void drawRectangle(){rectangle.draw();}public void drawSquare(){square.draw();} }步骤 4 使用该外观类画出各种类型的形状,由下面的代码我们可以看到我们可以调用shapemaker的方法间接调用底层实现类的方法。 FacadePatternDemo.java public class FacadePatternDemo {public static void main(String[] args) {ShapeMaker shapeMaker new ShapeMaker();shapeMaker.drawCircle();shapeMaker.drawRectangle();shapeMaker.drawSquare(); } }步骤 5 执行程序输出结果 Circle::draw() Rectangle::draw() Square::draw()rust rsut实现的大致思路和java相同就不再赘述过程。 // 创建形状接口 trait Shape {fn draw(self); } struct Rectangle {} struct Circle{} struct Square{} impl Shape for Rectangle {fn draw(self) {println!(Shape: Rectangle);} } impl Shape for Circle {fn draw(self) {println!(Shape: Circle);} } impl Shape for Square {fn draw(self) {println!(Shape: Square);} } // 创建外观 struct ShapeMaker{rectangle:Rectangle,circle:Circle,square:Square } impl ShapeMaker {fn draw_rectangle(self) {self.rectangle.draw();}fn draw_circle(self) {self.circle.draw();}fn draw_square(self) {self.square.draw();} } fn main() {//创建接口实体let shape_makerShapeMaker{rectangle:Rectangle { },circle:Circle { },square:Square { }};// 体现接口抽象实现的各种方法shape_maker.draw_circle();shape_maker.draw_rectangle();shape_maker.draw_square(); }rust仓库 https://github.com/onenewcode/design.git 本教程项目在bin文件夹下的facade.rs文件中
http://www.hkea.cn/news/14315126/

相关文章:

  • wordpress站群搭建外贸网站建设行业发展
  • 网站建设合同的法律网站建设排名优化公司哪家好
  • 宠物医疗设计素材网站邯郸平台公司
  • 半月报网站建设商务代表工作总结seo视频教学网站
  • 南阳企业网站建设公司wordpress自带数据库优化
  • 循化网站建设公司天眼查 公司查询企业查询官网
  • 电子工程网官方网站移动端 pc网站开发
  • 手机网站收费虚拟主机wordpress解压位置
  • 课程网站设计建设企腾网络推广效果怎么样
  • 网站系统怎么做湖南网站建设报价
  • 网站建设图片属性设置东莞做企业营销型网站的公司
  • 即墨网站建设公司网站建设交接协议书
  • 网站开发如何记账精品课程网站建设内容
  • 织梦保险网站源码网站的建设及推广
  • 2014网站seo上海中风险地区
  • 网站和平台有什么区别做册子模板素材有哪些网站
  • 江西龙峰建设集团的网站wordpress后台登陆不进去
  • 网站为何要屏蔽百度蜘蛛wordpress+菜单大小
  • 自建个网站怎么做上海中学初中部
  • 公共法律服务网站平台建设预算手机网站开发 html5
  • 昆明酒店网站建设个人怎么做旅游网站
  • 做c语言题目的网站汕头网站建设推荐
  • 网站 欣赏网页设计ui设计
  • 网络营销公司模板外链seo
  • 网站备案号被注销怎么办仿百度图片网页设计
  • 专业网站开发制作黄页内容
  • 美容网站制作百度小说搜索风云榜排名
  • 备案的网站名与公司名称网站设置时间段访问
  • 网站上海备案查询wordpress照片主题
  • 大连网站设计培训班wordpress 自定义头像插件