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

网站建设与管理计划书南宁seo内部优化

网站建设与管理计划书,南宁seo内部优化,网络课程教学平台有哪些,丰台区的建设网站说明:本文介绍设计模式中结构型设计模式中的,外观模式; 亲手下厨还是点外卖? 外观模式属于结构型的设计模式,关注类或对象的组合,所呈现出来的结构。以吃饭为例,在介绍外观模式之前&#xff0…

说明:本文介绍设计模式中结构型设计模式中的,外观模式;

亲手下厨还是点外卖?

外观模式属于结构型的设计模式,关注类或对象的组合,所呈现出来的结构。以吃饭为例,在介绍外观模式之前,通过这个例子,谈谈我对面向对象的理解。

吃饭,是一个功能,可以有两种方式来实现,对应的正是面向过程和面向对象的思想。

第一种,自己买菜买工具(初始化变量),做饭(实现方法),吃饭(实现方法),洗碗卖工具(释放内存空间);

第二种,点外卖(手机对象),做饭(店家对象),送外卖(外卖员对象),吃饭(顾客对象);

在这里插入图片描述

通过比较,就很容易理解两种设计思想了。实际上就是实现功能的思路,一种是将功能分为一步一步,逐步实现(面向过程);一种是将属性和行为封装为对象,让功能的实现在对象的交互中实现。

这两种解题思路,没有高低之分,也没有哪种更优秀,殊途同归。

外观模式

以上面吃饭为例,面向对象设计,如下:

(Vegetables,蔬菜对象,提供蔬菜)

/*** 蔬菜对象*/
public class Vegetables {public void provide() {System.out.println("提供蔬菜");}
}

(Cook,厨师对象,做饭)

/*** 厨师*/
public class Cook {public void cook() {System.out.println("做饭");}
}

(用餐者对象,吃饭,吃完饭洗碗)

/*** 食客*/
public class Diners {public void eat() {System.out.println("吃饭");}public void wash() {System.out.println("洗碗");}
}

(Client,客户端,演示吃饭功能)

/*** 客户端*/
public class Client {public static void main(String[] args) {new Vegetables().provide();new Cook().cook();new Diners().eat();new Diners().wash();}
}

(执行结果)

在这里插入图片描述

通过上面的例子,我们可以看出,实现一个功能涉及到多个对象的配合,那为什么我们不把这些对象中对应的功能(方法)绑定到一起,合并成一个业务层面上的功能(吃饭)呢?

如下:

(EatFacede,吃饭外观类,捆绑各个对象的方法,实现吃饭功能)

/*** 吃饭外观类*/
public class EatFacede {/*** 蔬菜对象*/private Vegetables vegetables;/*** 厨师对象*/private Cook cook;/*** 食客对象*/private Diners diners;public EatFacede() {vegetables = new Vegetables();cook = new Cook();diners = new Diners();}/*** 吃饭*/public void eat() {vegetables.provide();cook.cook();diners.eat();diners.wash();}
}

(Client,客户端,演示吃饭流程,只需要调用吃饭外观类中的eat()方法即可)

/*** 客户端*/
public class Client {public static void main(String[] args) {new EatFacede().eat();}
}

(执行结果)
在这里插入图片描述

以上就是结构型设计模式中,外观模式的内容。这种将繁多的对象方法合并到一起,实现一项“大功能”的思路与生活经验非常贴合。例如开公司,公司的合伙人一边有资金,一边有技术,聚在一起开公司干大事。

另外,在三层框架开发中,Controller层只管调用Service层中的一个方法,而在Service层中,该方法内可能去调用了其他Bean对象的方法,最终才实现了本Service中的这个功能,这也是外观模式的体现。

总结

本文参考《设计模式的艺术》、《秒懂设计模式》两书

http://www.dinnco.com/news/5544.html

相关文章:

  • 做热血钓鱼网站竞价账户托管的公司有哪些
  • 武汉建设厅官网seo优化分析
  • 网站运营数据周报表怎么做百度地图人工客服电话
  • asp.net做购物网站黑龙江新闻头条最新消息
  • 宁波英文网站建设珠海百度关键字优化
  • 网站建设的概念郴州网站推广
  • 台州网站建设解决方案站长工具seo综合查询引流
  • 撤销网站备案表填写后网站建设的流程是什么
  • 西安淘宝网站建设公司全国疫情又严重了
  • 银行门户网站是什么意思长沙网站包年优化
  • 网站后台域名百度竞价返点一般多少
  • 网站建立的百度招商客服电话
  • 深圳企业网站建设公司头条新闻最新消息
  • 网站如何做滚动效果图搜索引擎优化的核心是
  • 专业优定软件网站建设可以直接进入的舆情网站
  • 临朐网站建设哪家好bt磁力猪
  • 网站开发财务费用谷歌搜索优化
  • 南京医院网站建设方案简述seo的优化流程
  • 天地做网站免费培训机构管理系统
  • app开发框架微博seo排名优化
  • 这么做网站原型图品牌营销策划
  • 温州大军建设有限公司网站网络推广需要多少费用
  • 做一的同志小说网站有哪些互联网营销师报名费
  • 暴雪战网官网如何优化
  • 如何自己创建购物网站淘宝关键词搜索
  • 做英文网站用什么源码简述什么是百度竞价排名
  • 赣州销售网站手机网站制作软件
  • 潍坊企业做网站网络优化公司排名
  • 网站开发软件平台有哪些郑州网络推广公司排名
  • 哪个做公司网站精准营销理论