设计模式(design model)
文章平均质量分 73
「已注销」
这个作者很懒,什么都没留下…
展开
-
C++设计模式从0进击-2-抽象工厂模式
Abstract Factory(抽象工厂模式):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂模式(Abstract Factory)追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory工厂模式:客户类和工厂原创 2014-08-25 17:47:00 · 1042 阅读 · 0 评论 -
设计模式无限重读之单一职责原则(SRP)
设计模式之六大原则——单一职责原则(SRP)定义:应该有且仅有一个原因引起类的变更。There should never be more than one reason for a class to change. 优点:1、类的复杂性降低,实现什么职责都有清晰明确的定义;2、可读性提高,复杂性减低,可读性当然提高;3、可维护性提高,可读性提高,可维转载 2017-03-03 14:41:06 · 344 阅读 · 0 评论 -
设计模式无限重读之最少知识原则(LKP)
出处:http://www.cnblogs.com/muzongyan/archive/2010/08/05/1793000.html设计模式之六大原则——迪米特法则(LoD,LKP)定义:迪米特法则(Law of Demeter,LoD)也称为最少知识原则(Least Knowledge Principle,LKP)。一个对象应该对其他对象有最少的了解。通俗地转载 2017-03-03 11:28:00 · 491 阅读 · 0 评论 -
设计模式无限重读之依赖倒置原则(DIP)
出处:http://www.cnblogs.com/muzongyan/archive/2010/08/04/1792392.html设计模式之六大原则——依赖倒置原则(DIP)依赖倒置原则(Dependence Inversion Principle,DIP)的原始定义:高层模块不应该依赖底层模块,两者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。转载 2017-03-03 11:34:25 · 496 阅读 · 0 评论 -
设计模式无限重读之里氏替换原则(LSP)
出处:http://www.cnblogs.com/muzongyan/archive/2010/08/03/1791466.html设计模式之六大原则——里氏替换原则(LSP)里氏替换原则(Liskov Substitution Principel)是解决继承带来的问题。 继承的优点:代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性;提转载 2017-03-03 11:44:07 · 420 阅读 · 0 评论 -
设计模式无限重读之接口隔离原则(ISP)
原文:http://www.cnblogs.com/muzongyan/archive/2010/08/04/1792528.html设计模式之六大原则——接口隔离原则(ISP)接口隔离原则 Interface Segregation Principle 定义:客户端不应该依赖它不需要的接口类间的依赖关系应该建立在最小的接口上我们可以把这两个定义转载 2017-03-03 11:10:40 · 359 阅读 · 0 评论 -
C++设计模式新解四 观察者模式+事件订阅
定义:定义对象间的一种一对多关系的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。观察者模式又被称为发布/订阅模式,在这种模式中,一个目标物件(被观察者)管理所有相依于它的相关物件(观察者),并且在目标物件的状态发生改变时主动发出通知。这通常通过各物件所提供的方法来实现,观察者模式通常被用来做事件处理系统。举个例子:老板就是被观察者,员工就是观察者,大家都看原创 2015-12-21 15:53:35 · 3890 阅读 · 1 评论 -
消息的本质
转自http://blog.csdn.net/coolmeme/article/details/6042464消息到底是什么呢?英文称之为message。根据百度百科的解释,在我国古代把客观世界的变化中的事实称为“消息”,到了近代,“消息”逐渐演变成了“新闻”的含义。在我们研究的计算机科学里,消息往往表示了模块之间的通信交互。我们着重研究的是计算机软件里的消息。我们从以下几点定转载 2015-12-16 20:13:30 · 563 阅读 · 0 评论 -
C++设计模式新解二 建造者模式+工厂模式
定义:将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。建造者模式的角色包括:builder:给出一个抽象接口,以规范产品对象的各个组成成分的建造。这些接口规定,具体要实现复杂对象的哪些部分的创建,并不涉及具体的对象部件的创建。ConcreteBuilder:实现Builder接口,根据不同的商业逻辑,具体化复杂对象的各部分创建。在建造过程完整后,提供产品的实例。原创 2015-12-10 18:47:50 · 1065 阅读 · 0 评论 -
面向对象 六大设计原则
1.开闭原则 - OCP - Open Cose Principle2.里氏代换原则 - LSP - Liskov Substitution Principle3.依赖倒转原则 - DIP - Dependency Inversion Principle4.接口隔离原则 - ISP - Interface Sergregation Principle5.合成/聚合复用原则 - CA原创 2015-12-12 11:16:19 · 773 阅读 · 0 评论 -
C++设计模式新解三 简单工厂 工厂模式 抽象工厂
先对比看两段代码//水杯类,定义了一些功能 class Cup{ }; //玻璃杯 class GlassCup : public Cup{};//钢杯 class SteelCup: public Cup{};下面就是重点了:如果是 简单工厂 那么工厂的实现代码就是://简单工厂类 class SimpleFactory原创 2015-12-11 20:49:19 · 757 阅读 · 0 评论 -
C++设计模式新解一 代理模式 (PS设计模式的必要性)
为什么要学习设计模式?我一直没太大的感觉,代码也写了一些,但是没有见哪里用到过。最近项目倒闭,公司要向别的项目组分人,去见别的组的程序老大,这个问题又重新提上日程。然后在铩羽而归之后,重新看着设计模式的六大原则,以及几个模式。心里再也没有原来的那种茫然不知所措。有一种奇怪的感觉,原来你也在这里。复杂的东西只是说明你不明白,不代表它本身是复杂的。失去的东西回过头去原创 2015-12-10 17:26:35 · 764 阅读 · 0 评论 -
C++设计模式从0进击-6-原型模式
原型模式(Prototype)意图原型模式用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。适用性当要实例化的类是在运行时刻指定时,例如,通过动态装载;或者为了避免创建一个与产品类层次平行的工厂类层次时;或者当一个类的实例只能有几个不同状态组合中的一种时。建立相应数目的原型并克隆它们可能比每次用合适的状态手工实例原创 2014-08-26 11:02:15 · 826 阅读 · 0 评论 -
C++设计模式从0进击-3-工厂模式
Factory Method(工厂模式):定义一个用于创建对象的接口,让子类决定将哪一个类实例化。Factory Method使一个类的实例化延迟到其子类。工厂模式(Factory)请MM去麦当劳吃汉堡,不同的MM有不同的口味,要每个都记住是一件烦人的事情,我一般采用Factory Method模式,带着MM到服务员那儿,说“要一个汉堡”,具体要什么样的汉堡呢,让MM直接跟服务员说就行原创 2014-08-25 18:23:42 · 1041 阅读 · 0 评论 -
C++设计模式从0进击-5-单例模式
单例模式(Singleton)意图单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。适用性当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时。单例模式(Singleton)俺有6个漂亮的老婆,她们的老原创 2014-08-26 09:58:22 · 1192 阅读 · 0 评论 -
C++设计模式从0进击-4-建造者模式
建造者模式(Builder)意图建造者模式将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。适用性当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。当构造过程必须允许被构造的对象有不同的表示时。建造者模式(Builder)MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能原创 2014-08-26 09:26:29 · 1022 阅读 · 0 评论 -
设计模式:简单工厂、工厂方法、抽象工厂之小结与区别 .
简单工厂,工厂方法,抽象工厂都属于设计模式中的创建型模式。其主要功能都是帮助我们把对象的实例化部分抽取了出来,优化了系统的架构,并且增强了系统的扩展性。本文是本人对这三种模式学习后的一个小结以及对他们之间的区别的理解。 简单工厂 简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。不修改代码的话,是无法扩展的。 工厂方法转载 2014-08-25 18:33:32 · 956 阅读 · 0 评论 -
C++设计模式从0进击-1-简单(静态)工厂模式
Factory Method(工厂模式):定义一个用于创建对象的接口,让子类决定将哪一个类实例化。Factory Method使一个类的实例化延迟到其子类。工厂模式(Factory)请MM去麦当劳吃汉堡,不同的MM有不同的口味,要每个都记住是一件烦人的事情,我一般采用Factory Method模式,带着MM到服务员那儿,说“要一个汉堡”,具体要什么样的汉堡呢,让MM直接跟服务员说就行原创 2014-08-25 17:08:42 · 1922 阅读 · 0 评论 -
设计模式无限重读之开闭原则(OCP)
出处:http://www.cnblogs.com/muzongyan/archive/2010/08/05/1793454.html设计模式之六大原则——开闭原则(OCP)开闭原则(Open Closed Principle)是Java世界里最基础的设计原则,它指导我们如何建立一个稳定的、灵活的系统。 定义:一个软件实体如类、模块和函数应该对扩展开放,对修转载 2017-03-03 11:06:13 · 349 阅读 · 0 评论