adapter模式与facade模式

1 .Adapter模式:swing的jtable组件应用是Adapter模式的一个很好的例子,jtable组件通过调用tableModel接口中定义的方法获取表格的相关信息,这样就使得我们可以很容易地写出一个适配器类从域对象(如多个rocket类实例对象)中获取用于填充表格的数据.
 若要使用jtable,我们通常写一个对歇脚适配器类,由它将jtable对象上的的操作委托给某个现有的类的多个实例.jtable类有两方面原因导致我们不能使用类适配器,第一,表适配器类必须扩展abstractTaleModel类,因此它就不能再扩展现在有的类,第二,jtable类需要收集多个对象的数据,而只有对象适配器类才可以对多个对象进行适配. 
  当设计自己的系统时,要考虑从使用Adapter模式的软件架构中所带来的好处和灵活性.

2 .Facade(外观)模式:
  工具包的可复用性会带来一个问题:面向对象子系统中的类应用类型会很多,这就会造成许多选项,希望使用工具包的开发者可能并不知道从哪里开始.集成开发环境(IDE),比如:Eclipse,能够让开发者从复杂的开发工具包中摆脱出来,但是IDE有时候会生成大量的代码,这可能让开发者疲于对付.
 另一种简化途径是使用工具包的提供的外面-----使用少量的代码提供一个典型的.在类库中没有虚饰用法的类,facade模式就是一个功能介于工具包和完整应用程序之间的类,可提供包或子系统中类的简化功能.
  facade模式的目的在于提供一个接口,使子系统更加容易使用.
  外观类,工具类,示例类.
  外观类的方法可能都是静态方法,这种情况下,外观类在UML中被称作工具类.
  示例类与外观类的两点区别:
   示例类通常是一个能够独立运行的应用程序,而外观类通常不是.
   示例类通常会包含示例数据,而外观类不会.
   外观类通常是可配置的,而示例类不是.
   外观类旨在提供复用.而示例类不是.
   外观类旨在应用于实际环境中,而示例类不是.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值