首先,是设计模式的分类,我们知道,常用的设计模式共23种。但总体来说,设计模式氛围三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单列模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式 ...
分类:
Web程序 时间:
2017-07-07 22:42:44
阅读次数:
282
设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模 ...
分类:
其他好文 时间:
2017-07-06 20:52:03
阅读次数:
191
一 多态和多态性 1 什么是多态:多态就是一种失误的多种形态。(例如:水有冰的形态,还有水蒸气的形态等等)一个抽象类有多个子类,因而多态的概念依赖于继承。 序列类型有多种形态:字符串,列表,元组。 动物有多种形态:人,狗,猪 1 import abc 2 class Animal(metaclass ...
分类:
其他好文 时间:
2017-07-06 18:38:36
阅读次数:
154
什么是装饰器 如果有函数A,B,C,已经所有编写完毕。这时你发现A, B, C都须要同一个功能,这时该怎么办? 答: 装饰器 装饰器事实上就是一个函数,只是这个函数的返回值是一个函数 个人理解。装饰器主要就是为了完毕上边的这个功能,将A, B, C 函数包裹在还有一个函数D中。D函数在A函数运行之前 ...
分类:
编程语言 时间:
2017-07-05 13:32:41
阅读次数:
129
上节复习 yield表达式g.send(1)send函数是相当于next并且给yield传一个值,先传值,再next 加上装饰器 yield表达式的应用 第一个是当前目录的地址第二个是当前目录下的目录第三个是当前目录下的文件再次next(g)就可以查看当前目录下第一个目录下的信息 ######### ...
分类:
编程语言 时间:
2017-07-04 23:19:26
阅读次数:
259
查看函数内部的注释 导入一个模块 加入一个装饰器,让用户调用函数的时候查看注释是函数本身的而不是装饰器的 调用加了装饰器的源代码功能 更改函数的注释信息 作业第四题,登录一次后面函数无须重复登录 函数内部可以改全局变量的列表,字典的元素,但是不能改变量,因为列表和字典是可变类型,赋值不是可变类型。 ...
分类:
编程语言 时间:
2017-07-04 23:15:47
阅读次数:
210
生成器表达式形式 直接上代码 输出结果 生成器的表达式形式,在每一个包含生成器表达式形式的函数写完后,都必须要执行第一次__next__方法初始化后(即传入一个的默认返回值None),才能够使用send()方法传入值,否则会抛出TypeError错误。 初始化装饰器:使用装饰器装饰的方法进行函数定义 ...
分类:
编程语言 时间:
2017-07-04 18:11:15
阅读次数:
171
装饰器模式允许我们根据运行时不同的情景动态地为某个对象调用前后添加不同的行为动作。 ...
分类:
其他好文 时间:
2017-07-04 14:59:40
阅读次数:
171
一、SiteMesh介绍SiteMesh是一个JavaWEB项目的网页布局和修饰框架。使用SiteMesh后就不再需要在每个页面中都用<jsp:include>标签引入页头、页尾、导航等其他公用页面了。可以将网页的内容和页面结构分离,达到页面结构共享的目的。页面装饰效果耦合在目标页面中,无需使..
分类:
Web程序 时间:
2017-07-04 14:52:45
阅读次数:
130
就字义上来说,装饰器的功能就是把一个函数装饰成一个新的函数,当原先的函数被运行时,同时运行新旧两个函数。 几个最简单的函数,当函数mission_1()至mission_3被运行时,显示mission_1至mission3。现在要求不改动当前函数运行方法和不改动函数内容,增加一个mission_a的 ...
分类:
编程语言 时间:
2017-07-04 09:45:11
阅读次数:
126