`
klcwt
  • 浏览: 190124 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

设计模式遐想

阅读更多
Proxy
比如你去相亲,找个媒人,然后让媒人去查看对方的条件。她帮你完成一些检查工作(就像计算机中的权限检查之类的工作)。
你的好处就是不用亲自去做,委托给别人就行。那么你本身所做事情就非常少了(降低本身的复杂度)。
但是你要出钱啊,(在计算机就是性能要消耗)。
同时你还要去告诉他做什么事情,在java中,你需要去编写这个代理类。

如果扩展下,你找房子可以有中介,去旅游可以有找服务社。


facade与adapter
adapter的一个例子,比如你一个old pc上面没有usb接口,只有串口。这时候你可以装一个适配器,一边是是串口,一边usb接口。这里你就可以连接一般的usb设备。
facade的一个例子,你去邮局发,可能要发邮件,寄包裹,汇款等,如果一个一个去跑这些窗口,那会非常麻烦,如果专门开设一个窗口,把这些业务都集中起来处理,就省了不少事情。

composite
有几点要注意,采用树形结构将对象组织起来,他们具有统一的接口,要使用Iterator,与Chain of Responsibility模式类似。
比如一个主板,他由许多芯片组成,而其中这些芯片不是一个primitive芯片,就是一个可以继续添加其他元件的芯片。他们之间的关系就类似于树。要使用这些元件就的用Iterator来读取出来。
主板
    ---芯片a
       ---芯片a.1
    ---芯片b(primitive)

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics