基本方法又可以分为三种:抽象方法(Abstract Method)、具体方法(Concrete Method)和钩子方法(Hook Method)。 这是我在《java与模式》书里看到的一种说法,觉得很新鲜,因为在我的印象中没有以这种方式来对方法分类,可能这也就是在设计模式中的叫法。 这三种方法也是 ...
分类:
其他好文 时间:
2020-06-30 17:34:50
阅读次数:
65
我们在使用python的flask框架时,可能会经常用到生命周期函数如:before_request, before_first_request,或者信号等,刚开始学的时候就想只要写一个函数,然后加上一个装饰器居然就可以实现这种开挂般的效果,那时感觉这框架代码写得真棒, 再过些时间自己学会阅读框架源 ...
分类:
编程语言 时间:
2020-06-30 14:41:29
阅读次数:
70
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的, ...
分类:
编程语言 时间:
2020-06-30 12:50:59
阅读次数:
60
装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。我们通过下面的实例来演示装饰器模式的用法 ...
分类:
Web程序 时间:
2020-06-30 12:40:18
阅读次数:
74
装饰模式作用 在不改变原来类,也不使用继承的基础上增强类的某个功能!! 装饰者设计模式的4个基本步骤 - 装饰类和被装饰类必须实现相同的接口 - 在装饰类中必须传入被装饰类的引用 - 在装饰类中对需要扩展的方法进行扩展 - 在装饰类中对不需要扩展的方法调用被装饰类中的同名方法 /** * 装饰类和被 ...
分类:
其他好文 时间:
2020-06-30 11:06:33
阅读次数:
78
文章目录 中介者模式简介 使用示例 总结 优缺点 使用场景 中介者模式简介 中介者模式(Mediator),用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示的相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 实际开发过程中可能存在许多对象多对多的关系,如果对象直接持有其依 ...
分类:
其他好文 时间:
2020-06-29 20:03:32
阅读次数:
63
观察者模式定义了一种一对多的依赖关系,让多个观察者对象监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有的观察者对象,使他们能够自动更新自己 应用场景:当一个对象的改变需要同事改变其他对象的时候,而且它不知道具体有多少对象有待改变时,应该考虑使用观察者模式。 观察者模式所作的工作其实就是在 ...
分类:
Web程序 时间:
2020-06-29 15:15:09
阅读次数:
65
单例模式 特点: 三私一公:私有的静态变量(存放实例),私有的构造方法(防止创建实例),私有的克隆方法(防止克隆对象),公有的静态方法(对外界提供实例) 应用场景: 程序应用中,涉及到数据库操作时,如果每次操作的时候连接数据库,会带来大量的资源消耗。可以通过单例模式,创建唯一的数据库连接对象。 <? ...
分类:
Web程序 时间:
2020-06-29 13:30:38
阅读次数:
49
一、建造者模式(Builder) 工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性,其实建造者模式就是前面抽象工厂模式和最后的Test结合起来得到的。我们看一下代码: 还和前面一样,一个Sender接口,两个实现 ...
分类:
编程语言 时间:
2020-06-29 09:18:03
阅读次数:
63
概述 什么是单例模式 单例模式,是保证一个类只有一个实例,并提供一个访问该实例的全局节点。 单例模式是一种创建型模式(创建型模式提供了创建对象的机制,能够提升已有代码的灵活性和可复用性。) 说明 单例模式,是最简单的设计模式之一。看上面的描述就很能理解这一模式,不做过多说明。该类在内存中只有一个实例 ...
分类:
其他好文 时间:
2020-06-29 00:40:56
阅读次数:
52