一.适配器模式定义 将一个类的接口转换成另外一个接口,适配器模式使得原本由于接口不兼容,而不能在一起工作的哪些类能够在一起工作. 二.python 实现 import string import cPickle as p import datetime import os class LogModel: logId="" operateUser="" operateTime="" logContent="" def __ini…
最近在学设计模式,正巧书之前学了些python,但用的还不是很成熟.<研磨设计模式>书上只给了java代码,本着以练手为目标,我照着书上打了一遍java代码,在仔细体会其思想后,将其写成了python的代码.有不对的地方希望各位批评指正~ 具体原理不多做介绍,具体可以参考http://chjavach.iteye.com的博客,或者<研磨设计模式>的书. 一.背景介绍 接口思想: 众所周知,面向对象语言最大的特点便是封装,继承,多态这三个概念.而像Java等面向对象语言最核心的思想…
一.外观模式定义 为子系统中的一组接口提供一个一致的界面,使得此子系统更加容易使用. 二.书中python代码实现 class AModuleApi: def testA(self): pass class AModuleImpl(AModuleApi): def testA(self): print "Now Call testA in AModule!" class BModuleApi: def testB(self): pass class BModuleImpl(BModul…
所谓学习问题,是指观察由n个样本组成的集合,并依据这些数据来预測未知数据的性质. 学习任务(一个二分类问题): 区分一个普通的互联网检索Query是否具有某个垂直领域的意图.如果如今有一个O2O领域的垂直搜索引擎,专门为用户提供团购.优惠券的检索:同一时候存在一个通用的搜索引擎,比方百度,通用搜索引擎希望可以识别出一个Query是否具有O2O检索意图,如果有则调用O2O垂直搜索引擎,获取结果作为通用搜索引擎的结果补充. 我们的目的是学习出一个分类器(classifier),分类器能够理解为一个函…
进程什么是进程?程序就是一堆放在磁盘上的代码,进程是一段程序的运行过程正规点说,进程一般由程序.数据集.进程控制块三部分组成 什么进程切换?进程切换是,一个正在运行的进程被中断,操作系统指定另一个进程为运行态,并把CPU执行权交给这个进程.由操作系统控制调度,如单线程遇到io或执行时间过长就会被迫交出cpu执行权限1 )如果没有遇到io操作,操作系统会按照一个固定的时间段去切换进程,几百毫秒(时间轮询切换).进程每一次切换的时间都是微不足道的,但要命的是其切换次数.2)遇到io操作,则主动交出c…
在前面一篇博客中介绍了“命令模式”(Command Pattern),今天博客的主题是“适配器模式”(Adapter Pattern).适配器模式用处还是比较多的,如果你对“适配器模式”理解呢,那么自然而然的就会知道其使用场景.今天这篇博客我们就举一个生活中的使用适配器模式的示例,然后将该示例使用代码进行表示出来,那么我们所实现的代码使用的设计模式就是我们今天所说的“适配器模式”. “适配器”其实说白了就是一个转接头,比如Mac Book Pro 要接外接显示器,如果你没有HDMI传输线的话,那…
Python版 https://github.com/faif/python-patterns/blob/master/structural/adapter.py #!/usr/bin/env python # -*- coding: utf-8 -*- """ *What is this pattern about? The Adapter pattern provides a different interface for a class. We can think ab…
某同学应聘Python岗位被录用.上班第一天,Leader吩咐他写一个获取次日日期信息的函数.该同学信心满满地写下了这样一段代码, 然后就没有然后了. import time def get_next_date(): time.sleep(24*60*60) return time.strftime('%Y-%m-%d') 当然,这只是一个段子,相信没有Python程序员真的会写出这样的代码.不过,很多时候,我们写出来的代码尽管功能满足需求,效率也还说得过去,但可读性较差,且难以维护,和人们通常…
python的装饰器使用是python语言一个非常重要的部分,装饰器是程序设计模式中装饰模式的具体化,python提供了特殊的语法糖可以非常方便的实现装饰模式. 系列文章 python设计模式之单例模式(一) python设计模式之常用创建模式总结(二) python设计模式之装饰器详解(三) python设计模式之内置装饰器使用(四) python设计模式之迭代器与生成器详解(五) 装饰模式简介 什么叫装饰?简单来说就是在已有的对象上添加格外的属性.方法或一段代码实现一个新的功能但是又不改变原…
分享下python中使用模块xml.dom解析xml文件的实例代码,学习下python解析xml文件的方法. 原文转自:http://www.jbxue.com/article/16587.html 一 .python模块 xml.dom 解析XML的API minidom.parse(filename)加载读取XML文件doc.documentElement获取XML文档对象node.getAttribute(AttributeName)获取XML节点属性值node.getElementsBy…