关闭

Python设计模式(九)【外观模式】

标签: python设计模式
1366人阅读 评论(0) 收藏 举报
分类:

努力终有回报

import time

SLEEP = 0.5

# 复杂部分
class TC1:
    def run(self):
        print("###### 测试1 ######")
        time.sleep(SLEEP)
        print(" 设置...")
        time.sleep(SLEEP)
        print("运行测试...")
        time.sleep(SLEEP)
        print("拆除...")
        time.sleep(SLEEP)
        print("测试结束了\n")


class TC2:
    def run(self):
        print("###### 测试2 ######")
        time.sleep(SLEEP)
        print("设置...")
        time.sleep(SLEEP)
        print("运行测试...")
        time.sleep(SLEEP)
        print("拆除...")
        time.sleep(SLEEP)
        print("测试结束了\n")


class TC3:
    def run(self):
        print("###### 测试3 ######")
        time.sleep(SLEEP)
        print(" 设置...")
        time.sleep(SLEEP)
        print("运行测试...")
        time.sleep(SLEEP)
        print("拆除...")
        time.sleep(SLEEP)
        print("测试结束了\n")


# 外观模式
class ExecuteRunner:
    def __init__(self):
        self.tc1 = TC1()
        self.tc2 = TC2()
        self.tc3 = TC3()
        """列表解析
          在一个序列的值上应用一个任意表达式,将其结果收集到一个新的列表中并返回。
          它的基本形式是一个方括号里面包含一个for语句对一个iterable对象迭代"""
        self.tests = [i for i in (self.tc1, self.tc2, self.tc3)]

    def runAll(self):
        [i.run() for i in self.tests]

#主程序
if __name__ == '__main__':
    testrunner = ExecuteRunner()
    testrunner.runAll()

运行结果如图:

这里写图片描述

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

最常用的设计模式---外观模式(C++实现)

外观模式:提供了一个统一的接口,用来访问子系统的一群接口。外观定义了一个高层接口,让子系统更容易使用。目地:让接口变得简单,是为了简化子系统的接口。
  • lh844386434
  • lh844386434
  • 2014-01-09 17:25
  • 1624

JAVA设计模式之门面模式(外观模式)

医院的例子   现代的软件系统都是比较复杂的,设计师处理复杂系统的一个常见方法便是将其“分而治之”,把一个系统划分为几个较小的子系统。如果把医院作为一个子系统,按照部门职能,这个系统可以划分为挂号、门...
  • jason0539
  • jason0539
  • 2014-04-02 07:16
  • 25213

大话设计模式(Python版)--外观模式

股民炒股代码: #!/usr/bin/env python from abc import ABCMeta,abstractmethod class Stock1: def Sell(se...
  • Jenny_yu1025
  • Jenny_yu1025
  • 2016-10-31 10:00
  • 332

Python的结构型设计模式之外观模式

书上说:如果某套接字因为太过于复杂或太专注于底层细节而变得不易使用,那么可考虑用“外观模式”将其简化并统合起来 讲真的,后面的享元模式和代理模式还好点,这一个外观模式,我怎么看也就是那样:虽然这次没...
  • zy_dream
  • zy_dream
  • 2017-04-24 15:48
  • 104

设计模式十三(外观模式,python语言实现)

基本原理请参考相关书籍,这里直接给实例   基本说明:外观模式不改变原有系统的结构,通过组建外观类提供对外交互的复杂工作。              &#...
  • hitzjm
  • hitzjm
  • 2012-12-12 11:22
  • 841

Python设计模式-外观模式

Python设计模式-外观模式代码基于3.5.2,代码如下;#coding:utf-8 # 外观模式class AlarmSensor: def run(self): prin...
  • qq_33339479
  • qq_33339479
  • 2017-06-24 18:38
  • 54

设计模式(九)外观模式Facade(结构型)

设计模式--外观模式Facade(结构型): 1. 概述      外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,...
  • Flying_in_the_world
  • Flying_in_the_world
  • 2016-03-02 14:11
  • 155

C++设计模式九--FacadePattern(外观模式)

C++ 设计模式 FacadePattern 外观模式
  • zhaoxd200808501
  • zhaoxd200808501
  • 2017-06-27 16:37
  • 170

设计模式(九)外观模式Facade(结构型)

转载:http://blog.csdn.net/hguisu/article/details/7533759 设计模式--外观模式Facade(结构型): 1. 概述  ...
  • StoneOK07
  • StoneOK07
  • 2013-11-08 16:11
  • 579

Android设计模式(九)--外观模式

问题:在Android中,Apk可以有微信,QQ为代表的插件式安装更新功能; 那么问题来了,主系统(姑且这么说)调用插件式安装的子系统,由子系统提供对外的访问,属不属于一种外观模式呢? 先说设计模...
  • naibbian
  • naibbian
  • 2015-06-09 17:51
  • 749
    个人资料
    • 访问:1194544次
    • 积分:17498
    • 等级:
    • 排名:第644名
    • 原创:315篇
    • 转载:851篇
    • 译文:123篇
    • 评论:290条
    博客专栏
    文章分类
    打赏
    如果你觉得我的文章对您有用,请随意打赏。 微信 支付宝