#设计名片的软件

设计模式之策略模式

fromabcimportABCMeta,abstractmethodfromoperatorimportitemgetter,attrgetter#策略模式:三个角色:上下文环境、策略的抽象、具体的策略#简而言之:定义一系列算法,将每个算法都封装起来,并且使他们之间可以相互替换。classPerson:def__in...
代码星球 ·2020-06-14

设计模式之适配模式(变压器模式、包装模式)

fromabcimportABCMeta,abstractmethodimportos#适配模式的三个角色:目标、源对象、适配器#适配模式的实现方式:组合、多继承classTarget(metaclass=ABCMeta):"""目标类"""@abstractmethoddeffunction(self):passcl...

设计模式之构建模式

fromabcimportABCMeta,abstractmethod#产品#构建者#指挥者classToy(metaclass=ABCMeta):"""玩具"""def__init__(self,name):self._name=nameself.__components=[]defgetName(self):ret...
代码星球 ·2020-06-14

设计模式之迭代模式

classBaseIterator:"""迭代器"""def__init__(self,data):self.__data=dataself.toBegin()deftoBegin(self):"""将指针移至起始位置"""self.__curIdx=-1deftoEnd(self):"""将指针移至结尾位置"""se...
代码星球 ·2020-06-14

设计模式之对象池机制

fromabcimportABCMeta,abstractmethodimportloggingimporttime"""设计要点:两个核心对象(进行池化的对象、对象池)、三个关键动作对象(借用对象、使用对象、归还对象)使用注意事项:对已归还的对象的引用,不能在进行任何其他操作,否则将产生不可预料的结果(使用引用计数技...
代码星球 ·2020-06-14

设计模式之状态模式

fromabcimportABCMeta,abstractmethod#状态模式关键在于找到使状态发生改变的某个属性或某个某个属性集,比如水的状态的改变关键在于温度classContext(metaclass=ABCMeta):"""状态类的上下文环境类"""def__init__(self):self.__state...
代码星球 ·2020-06-14

设计模式之职责模式

fromabcimportABCMeta,abstractmethod#职责模式又称为责任链模式#譬如在公司中请假,如果是2天以内,部门领导有权力审批,2天到5天,还需分管领导,5天以上,提交行政部门#这样每一级可以动态判断自己是否可以审批,如果没有权力,就一级一级往上报classRequest(metaclass=A...
代码星球 ·2020-06-14

设计模式之克隆模式

fromcopyimportcopy,deepcopy#理解深浅拷贝#浅拷贝:只拷贝引用类型对象的指针,不拷贝引用类型对象指向的值(只拷贝第一层)#深拷贝:同时拷贝引用类型对象及其指向的值#引用类型:Python中表现为:list、dict、、set、类对象a=[1,2,3,3,4]b=aa[1]=1000#[1,10...
代码星球 ·2020-06-14

设计模式之装饰模式

fromabcimportABCMeta,abstractmethod#装饰器引入classPerson(metaclass=ABCMeta):'''人'''def__init__(self,name):self._name=name@abstractmethoddefwear(self):print("着装:")cl...
代码星球 ·2020-06-14

设计模式之监听模式

fromabcimportABCMeta,abstractmethodimporttime'''别名:监听模式、观察者模式、推拉模型、订阅模式(一对多)被观察者的三个方法:添加观察者、移出观察者、通知观察者观察者的一个方法:更新方法每当被观察者的状态发生改变时,就会通知观察者,观察者就会判断被观察者的状态是否达到自己需...
代码星球 ·2020-06-14

python-利用Python窗口可视化抽象开发山寨版翻译软件

1.图片展示: 2.写出上面图式的小脚本需要利用python两个方面的知识:(1)可视化库(需用库:tkinter)(2)简单爬虫知识 (需用库:requests)注意:爬虫在获取翻译信息时,会因为一些反爬虫的机制导致失败,所以从翻译网站获取翻译信息时,要选择稳定性强的翻译网站,并做好针对网站的反爬...

php设计模式-依赖注入模式(Dependency Injection)

依赖注入模式用来减少程序间的耦合。当一个类要使用另一个类时,一般的写法如下:<?phpclassTest1{publicfunctionsay(){echo'hello';}}classTest2{public$test1;publicfunctioncommunicate(){$this->test1=n...

PHP设计模式_工厂模式

个人理解工厂类相当于平时用的基类,只需要把类new一次然后付给一个变量,以后直接引入基类调用变量使用类里的方法即可了解工厂模式,工厂方法或者类生成对象,而不是在代码中直接new。 使用工厂模式,可以避免当改变某个类的名字或者方法之后,在调用这个类的所有的代码中都修改它的名字或者参数,只需要在工厂类里修改需要n...

利用单例模式设计数据库连接Model类

之前在《【php】利用php的构造函数与析构函数编写Mysql数据库查询类》(点击打开链接)写过的Mysql数据库查询类还不够完美,利用《【Java】单例模式》(点击打开链接)介绍的思想可以将这个数据库链接类搞成单例,不会因为多个用户访问网站就创建一个数据库查询实例,拖慢整个网站的速度,让网站的数据库压力比较大,造成网...

php api接口安全设计 sign理论

一.url请求的参数包括:timestamp,token,username,sign1.timestamp:     时间戮2.token:   登陆验证时,验证成功后,生成唯一的token(可以为uuid),并把token储存到缓存(re...
首页上一页...8182838485...下一页尾页