一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式...
分类:
其他好文 时间:
2014-09-02 17:34:55
阅读次数:
285
前言点击查看:设计模式系列装饰器模式(Decorator)定义:不通过派生类增改类属性动作,而是通过模式设计动态的达到这种效果,而且比继承更方便灵活减少程序的复杂性。举例:汪峰打造冠军团队。首先团队类为空,经过汪峰不断的努力,为团队争取学员,也为团队队员打造合适的平台,让其发挥。团队不断的变强,变完...
分类:
其他好文 时间:
2014-08-28 19:41:05
阅读次数:
208
Python闭包先看一个例子:def outer(x): def inner(y): return x+y return innderadd = outer(8)print add(6)我们定义了一个方法outer,方法内部又定义了一个方法inner,方法outer返回值为...
分类:
编程语言 时间:
2014-08-27 18:32:58
阅读次数:
197
装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志、性能 测试、事务处理等。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用。概括的讲,装饰器 的作用就是为已经存在的对象添加额外的功能。入门讲解http://ww...
分类:
编程语言 时间:
2014-08-26 19:38:06
阅读次数:
215
概述:实例方法就是类的实例能够使用的方法。静态方法是一种普通函数,就位于类定义的命名空间中,它不会对任何实例类型进行操作。使用装饰器@staticmethod定义静态方法。类对象和实例都可调用静态方法。类方法是将类本身作为对象进行操作的方法。类方法使用@classmethod装饰器定义,其第一个参数...
分类:
编程语言 时间:
2014-08-25 21:00:04
阅读次数:
381
首先来看@staticmethod,这个装饰器很好理解,就是让类中的方法变成静态方法,不需要对象实例化就可以直接调用。在此静态方法中无法使用"self"参数;再看@classmethod。其实和@staticmethod功能类似, 可以简单理解为@staticmethod功能上增加了一个"cls"参...
分类:
编程语言 时间:
2014-08-25 18:53:04
阅读次数:
250
第一部分:简易/中等什么是Python装饰器,如何使用? 你会如何??设置很多项目,其中每一个使用Python的不同版本和第三方库?什么是PEP8和你是如何遵循它的规范?参数是如何传递的- 传值还是传引用? (容易,但又不那么容易,不确定是否能清楚地回答这个问题)什么是列表解析、字典解析?举个例子请...
分类:
编程语言 时间:
2014-08-22 14:23:38
阅读次数:
323
概念:在装饰模式中的角色有: ● 抽象构件(Component)角色:给出一个抽象接口,以规范准备接收附加责任的对象。 ● 具体构件(ConcreteComponent)角色:定义一个将要接收附加责任的类。 ● 装饰(Decorator)角色:持有一个构件(Component)对象的实例...
分类:
其他好文 时间:
2014-08-21 18:34:44
阅读次数:
217
from__future__importwith_statement#-*-coding:utf-8-*-#python:2.x__author__='Administrator'#with和contextlib#对于要确保即使发生一个错误时也能运行一些清理代码而言,try...finally语句很...
分类:
编程语言 时间:
2014-08-20 22:26:32
阅读次数:
282
#装饰器02#参数检查#主要是用在接收或者返回函数,在特定上下文执行时可能有用#例如:有一个函数通过XML-RPC调用,python将不能和静态类语言中一样直接提供它的完整签名,当XML-RPC客户要求函数签名时,就需要这样的能力"""xml-rpc相关学习:http://zh.wikipedia....
分类:
编程语言 时间:
2014-08-20 19:30:32
阅读次数:
264