设计模式
-
在商城系统中使用设计模式—-策略模式之在spring中使用策略模式
1.前言: 这是策略模式在spring中的使用,对策略模式不了解对同学可以移步在商城中简单对使用策略模式。 2.问题: 在策略模式中,我们创建表示各种策略的对象和一个行为,随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。 在spring 中,策略对象在正常情况下是,在启动Spring容器对时候,已经将策略对…
-
在商城系统中使用设计模式—-策略模式之在spring中使用观察者模式和发布/订阅
1.概念: 观察者模式: 是属于设计者模式中的一种,一个目标对象管理所有相依于它的观察者对象,并且在它本身的状态改变时主动发出通知。 发布/订阅: 是一种消息范式,消息的发送者(称为发布者)不会将消息直接发送给特定的接收者(称为订阅者),而是通过调度器将消息发布给订阅者。 2.区别:下图明显可以看出发布/订阅比观察者模式中多了一层中间信道, …
-
UI自动化之page object设计模式
在编写UI自动化脚本过程,需要考虑如何编写才能使脚本更容易维护及复用率更高,可读性更高。page object(以下称:PO模式)设计模式是Selenium 自动化测试项目开发实践的最佳设计模式之一,其核心思想就是将测试对象及测试脚本分层处理,对界面交互细节的封装,这样可以使测试案例更关注与业务而非界面细节,提高测试案例的可读性。 PO模式中会先定义一个公共…
-
设计模式六大原则之里氏替换原则
Liskov于1987年提出了一个关于继承的原则“Inheritance should ensure that any property proved about supertype objects also holds for subtype objects.”——“继承必须确保父类所拥有的性质在子类中仍然成立。”也就是说,当一个子类的实例应该能够替换任何…
-
C#设计模式–工厂模式之简单模式
简单工厂模式定义:简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。 工厂(Creator)角色 简单工厂模式的核心,它负责实现创建…
-
java常用设计模式(一)单例模式
第一次写博客,也是第一篇,从单例模式开始,不足之处,望各位看官海涵。 首先我们都知道单例模式是java常用的23种设计模式之一,它的用途可谓是非常广泛。它的核心就在于单实例,即整个环境中该类有且只能有一个对象。而java创建实例的方式已知的有四种,分别是通过new、clone、反射或者序列化这四种方式去创建实例,怎样保证单例呢,下面且听我一一道来。 …
-
java常用设计模式(四)装饰者模式
设计模式第四篇,装饰者模式,大家多多指教。 装饰者模式是动态的将责任附加到对象上(引自《Head First设计模式》)。这里的重点在于动态这两个字,我们都知道继承的实现的方式,它是是类编译的时候就去加载文件,属于一种静态的附加,而我们要实现动态的附加就不能单纯的通过继承来实现。在这种背景下,装饰者模式就应运而生了。装饰者模式的实现:首先所有的类都有…
-
12 自定义标签/JSTL标签库/web国际化/java web之设计模式和案例
EL应用 自定义一个标签,实现两个字符串的相加 1回顾 1.1servlet生命周期 init(ServletConfig) service(ServletRequest,ServletResponse) destory() 1.2回话技术 cookie:浏览器端…
-
[C++面试]单例模式-设计模式
面试中遇到了一个手写单例模式的题,在这里总结一下: class CSingleton { public: static CSingleton* getInstance() { if (NULL == instance) { instance = new CSingleton(); } return instance; } private: CSingle…
-
Java中的设计模式-适配器模式
注:基于《Java高并发编程详解-汪文君》、《深入理解JVM高级特性与最佳实践-周志明》,以学习为目的,加上自身理解、验证。作为笔记,为加深印象,做到不复制,不粘贴。欢迎,大家一起交流学习。 适配器模式 如果当前类的接口不适用与客户端,那么把它转换为客户端所能接受的另一种接口就是适配器模式。从而使得两个接口不匹配而无法在一起工作的两个类能够在一起工作。 适配…