返回目录为何要设计多功能消息组件之前写过一篇装饰器模式的文章,感觉不够深入,这次的例子是实现项目中遇到的,所以把它拿出来,再写写,之前也写过消息组件的文章,主要采用了策略模式实现的,即每个项目可以通过配置进行一种消息的订制,如,你可以订制email,sms,rtx,qq等,但不能同时采用多种机制完成...
分类:
其他好文 时间:
2015-03-13 12:25:47
阅读次数:
173
Java中的IO分为两个部分,以InputStream和Reader为基类的输入类,以OutputStream和Writer为基类的输出类。其中InputStream和OutputStream以字节为单位进行IO,而Reader和Writer以字符为单位。除了输入输出,还有一系列类库称为Filter,或成为装饰器。对于输入可用FilterInputStream和FilterReader的派生类,输出...
分类:
编程语言 时间:
2015-03-12 20:56:51
阅读次数:
253
在了解装饰器的之前一定要先了解函数作为参数传递, 什么是函数内嵌,请参考我之前写的博客函数简介
python装饰器思想有点类似设计模式的装饰模式, 其意图是动态地给函数对象添加额外的功能.比如像增加日志打印的功能,有点面向切面编程(AOP)的感觉.装饰器语法以@开头,接着后面跟着的是装饰器的名字和可选的参数.装饰器语法是一种语法糖.
格式如下@decomaker(deco_args)
de...
分类:
编程语言 时间:
2015-03-11 19:48:49
阅读次数:
208
Core API核心API主要有七类:带颜色的输出类(color output),上下文管理类(context managers), 装饰器类(decorators), 网络类(network), 操作类(oprations), 任务类(tasks), 工具类(utils)。Color Output...
最近在自学Python,在装饰器这里迷惑了我很久,有几个问题一直困惑着我。1.装饰器的语法原理;2.为什么要用装饰器;首先来看一下装饰器的原理。总而言之,装饰器就是函数或者类作为函数的返回值。将函数或者类作为装饰器的参数传递之后,装饰器对该函数或者类进行相应操作后再将其返回。这就是装饰器的基本原理。...
分类:
编程语言 时间:
2015-03-06 15:23:49
阅读次数:
174
新年好~? 那么,很久没有更新了,其实想想也没多少可以写的,因为Python的文档似乎很全面的说……能做的差不多只有翻译和整理了,英文过关的朋友不妨直接去doc.python.org这里查看相关资料 :) 转载请注明原作者...
分类:
编程语言 时间:
2015-03-05 13:13:27
阅读次数:
201
#coding:utf-8 """ 一段小代码说明@property装饰器的用法、__name是私有变量 外部不能通过foo.__name访问,但可以通过foo._Foo__name访问。 如果想通过点运算符设置和访问实例属性怎么办,@property派上用途了, ...
分类:
其他好文 时间:
2015-03-04 17:11:46
阅读次数:
138
在整理设计模式时发现代理模式和装饰器模式非常相似,所以找了篇文章来更好的理解下装饰器和代理模式的区别学习AOP时,教材上面都说使用的是动态代理,可是在印象中代理模式一直都是控制访问什么的,怎么又动态增加行为了,动态增加行为不是装饰器模式吗?于是 找了很多资料,想弄清楚这两者之间到底有什么区别。结果发...
分类:
其他好文 时间:
2015-03-02 18:16:28
阅读次数:
122
顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下:Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加一些功能,代码如下:[java]view plaincopypu...
分类:
编程语言 时间:
2015-03-02 18:10:34
阅读次数:
197
ZMAN的学习笔记之Python篇: 1.装饰器 2.函数可变长参数 这次来聊聊Python中函数的可变长参数,在实际中经常会用到哦~一、什么是“可变长参数” “可变长参数”就是向一个函数传入不定个数的参数。比如我写一个函数:传入一个学生参加各科目考试的成绩,求平均分,如两个学生分别传入(9...
分类:
编程语言 时间:
2015-02-26 16:12:07
阅读次数:
151