- 博客(8)
- 收藏
- 关注
原创 设计模式:抽象工厂模式(Python)
抽象工厂模式(Abstract Factory Pattern):提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。原则:依赖抽象,不要依赖具体类。案例:还是“工厂方法模式”中的例子,但是换一种方式来解决:因为口味的不同是原材料的不同造成的,因此我们就创建原材料工厂,每个工厂生产的原材料都不相同,同一款Pizza从不同的原材料工厂拿货,做出的P
2012-05-27 19:51:48 2991 1
原创 设计模式:工厂方法模式(Python)
工厂方法模式(Factory Method Pattern):定义了一个创建对象的接口,但由子类决定要实例化类的哪一个;即通过子类来创建对象。原则:要依赖抽象,不要依赖具体类。案例:先解释什么是工厂:如果你开一家Pizza店(PizzaStore抽象类)卖各种风味的Pizza(Pizza子类),那么你需要根据客户要求准备相应的Pizza(创建Pizza对象),然后烘烤、
2012-05-26 15:29:47 13724 2
原创 设计模式:装饰者模式(Python)
装饰者(或修饰)模式(Decorator):增加一个修饰类包裹原来的类,装饰过的对象可替代原始对象。原则:类应该对扩展开放,对修改关闭。案例:奶茶店有多种饮料:奶茶、果汁、咖啡;每种饮料可搭配若干配料:珍珠、布丁、牛奶;要能根据顾客的任意搭配下单并计算价钱;代码:#!/usr/bin/pythonclass Beverage: descr
2012-05-23 22:57:29 3318 1
原创 设计模式:观察者模式(Python)
观察者模式(Observer):定义了对象间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。类似报纸订阅,当订阅报纸后,一有更新就会自动收到,除非退订;这里我们将出版者称为“主题”(Subject),订阅者成为“观察者”(Observer)。原则:为交互对象之间的松耦合而努力案例:现在要实现一个气象站,观测三个数据:温度,湿度和气压;
2012-05-22 07:42:48 2520 1
原创 设计模式:策略模式(Python)
策略模式(Strategy Pattern):策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。原则:针对接口(即超类型)编程,而不是针对实现编程;把会变化的部分取出并“封装”起来,好让其它部分不会受到影响;多用组合,少用继承;案例:现在需要实现几种鸭子,每种鸭子都有不同的特征(display)
2012-05-17 23:53:51 6043 3
原创 用Python处理Cookie
第一次访问页面后,Server可将Cookie信息加入HTTP Header返回给浏览器,浏览器会自动将这些信息保存在本地;当再次访问相同域名时,浏览器将对应Cookie信息随请求一起发送,Server端可读取这些信息进行处理。Cookie可设置过期时间,到期后由浏览器自动删除;当我们要返回页面时,首先输出如下:print "Content-type: text/p
2012-05-17 15:07:56 14346
原创 Python调用MySQLdb插入中文乱码的问题
#!/usr/bin/python# -*- coding: utf-8 -*-import MySQLdbdef main(): fullname = "赵钱孙李" conn = MySQLdb.connect(host='localhost', user='root',passwd='123', db='account', charset='utf8') # OK
2012-05-14 11:24:09 3119
原创 VIM
--------------------------------------------------% #跳转到下一个匹配符号({} [] #ifdef 注释 ...)
2012-05-02 14:28:12 449
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人