定义:前篇初期中,我们的讲过结构型模式主要解决的问题是:
它具有的特性:
给相关联相互依赖的子系统(组合关联的子类的功能实现合并成一个超类的功能)提供一个一致性的界面
隔离内部系统,对外仅提供一个外观去,再外观类里统一所有子系统的操作。

说明:
一个汽车要跑起来需要几个步骤,也依赖内部几个系统,那如何我一键开车让它跑起来呐?
class Lunzixitong:
'''
轮子系统
'''
name = '轮子系统'
def start(self):
print('轮子系统开始工作!')
def stop(self):
print('轮子系统停止工作!')
class Yinjingxitong:
'''
引擎系统
'''
name = '引擎系统'
def start(self):
print('引擎系统-开始工作!')
def stop(self):
print('引擎系统-停止工作!')
class Yeyaitong:
'''
液压系统
'''
name = '液压系统'
def start(self):
print('液压系统-开始工作!')
def stop(self):
print('液压系统-停止工作!')
# 给上面所有的子系统套一个壳,组成一个车
class BaoMaCar:
'''
外观类
'''
name = "宝马车"
def __init__(self):
# 组合所有子系统的对象
self.yeya = Yeyaitong()
self.yinqi = Yinjingxitong()
self.lunzi = Lunzixitong()
def start(self):
# 启动内部的所有依赖的子系统
self.yeya.start()
self.yinqi.start()
self.lunzi.start()
print('子系统启动完毕---宝马车-开始工作!!!')
def stop(self):
self.yeya.stop()
self.yinqi.stop()
self.lunzi.stop()
print('子系统停止完毕---宝马车-停止工作!')
if __name__ == '__main__':
baoma = BaoMaCar()
baoma.start()
baoma.stop()
输出结果:
液压系统-开始工作!
引擎系统-开始工作!
轮子系统开始工作!
子系统启动完毕---宝马车-开始工作!!!
液压系统-停止工作!
引擎系统-停止工作!
轮子系统停止工作!
子系统停止完毕---宝马车-停止工作!
外观模式比较简单,其实也很理解!这里不再详述!
简书:https://www.jianshu.com/u/d6960089b087
掘金:https://juejin.cn/user/2963939079225608
小钟同学 | 文 【原创】| QQ:308711822
1:本文相关描述主要是个人的认知和见解,如有不当之处,还望各位大佬指正。 2:关于文章内容,有部分内容参考自互联网,如有链接会声明标注;如没有及时标注备注的链接的,如有侵权请联系,我会立即删除处理哟。
原文作者:程序员小钟同学;如有侵权,请联系管理员删除。