0

C++ 深入浅出工厂模式(进阶篇)

介绍 前文初始篇 "C++ 深入浅出工厂模式(初始篇)" ,主要阐述了简单工厂模式、工厂方法模式和抽象工厂模式的结构、特点和缺陷等。以上三种方式,在新增产品时,要么修改工厂类,要么需新增具体的工厂类,说明工厂类的封装性还不够好。 本文进阶篇,主要是将工厂类的封装性提高,达到新增产品时,也不需要修改工 ...

小林coding 发布于 2019-09-15 21:38 评论(0)阅读(8)
0

策略模式

策略模式采用组合的形式,封装不同的算法族,让算法之间可以相互替换,并让算法的变化独立于使用算法的客户。 ...

纳兰小依 发布于 2019-09-15 16:34 评论(0)阅读(26)
0

面向对象的设计原则

1.前言 面向对象三大特性:继承,封装,多态 面向对象是一种程序思想 而设计模式是一些代码设计经验形成的设计范式 面向对象的设计原则是介于面向对象和设计模式中间,是面向对象优秀代码的设计思想 2.面向对象设计七大原则 说到设计原则,不免说到七大原则 (1)单一原则: 作用:降低类的复杂性和提高可读性 ...

KillerTT 发布于 2019-09-15 14:50 评论(0)阅读(23)
0

同步、异步、阻塞、非阻塞

同步、异步、阻塞、非阻塞 [TOC] 1、同步 所谓同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不返回或继续执行后续操作。 简单来说,同步就是必须一件一件事做,等前一件做完了才能做下一件事。 例如:B/S模式中的表单提交,具体过程是:客户端提交请求 等待服务器处理 处理完毕返回,在这个 ...

luyuze95 发布于 2019-09-15 01:08 评论(0)阅读(77)
0

设计模式-创建型-抽象工厂模式

前一章节,我们介绍了简单工厂模式以及工厂方法模式,但是这两种模式都存在一定的局限性,只能生产某一类型下的某一种产品,如果需求变更,同类型下出现了不同的产品,比如芝士披萨不仅有口味上的不同,同时存在外观上的不同。这种时候,工厂模式显然不再满足要求,该怎么办呢?于是我们想到DIP原则,它不正是为了解决这 ...

酷学大叔 发布于 2019-09-14 13:22 评论(1)阅读(23)
0

设计模式-创建型-工厂模式

工厂设计模式: 顾名思义,该模式是用来生产对象的。在面向对象的设计模式中,万物皆对象,若使用new来创建对象,就会对该对象产生强耦合,加入我们需要更换该对象,那么使用该对象的对象都需要进行修改,这显然违背了开闭原则(OCP)。如果我们使用工厂来产生对象,我们只需要与这个工厂打交道就可以了,无需关心具 ...

酷学大叔 发布于 2019-09-13 14:57 评论(3)阅读(110)
0

设计模式-创建型-单例模式

单例模式:对于类的单例模式设计,就是采取一定的方法保证在整个软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。 单例模式有8种方式: 1、饿汉式(静态常量) // 2、饿汉式(静态代码块) 3、懒汉式(线程不安全) 4、懒汉式(线程安全,同步方法) 5、懒 ...

酷学大叔 发布于 2019-09-12 10:10 评论(0)阅读(69)
1

通俗易懂设计模式解析——代理模式

前言 今天讲的是结构型设计模式中的最后一个,这个模式也就是代理模式,在前段时间我写的一篇关于正向代理和反向代理的文章。虽说此代理非彼代理。但是代理一词还是具有相似的含义的。这里我们继续使用文章中的代购一个例子来讲述一下代理模式吧,人不方便去购买哪些物品,这时就有一个中间人,他来购买。他代替我去购买。 ...

小世界的野孩子 发布于 2019-09-12 09:18 评论(2)阅读(205)
0

设计模式六大原则:迪米特法则

目录: 设计模式六大原则:单一职责原则 设计模式六大原则:接口隔离原则 设计模式六大原则:依赖倒置原则 设计模式六大原则:里氏替换原则 设计模式六大原则:迪米特法则 设计模式六大原则:开闭原则 迪米特法则(LOD): 也叫最少知识原则。迪米特法则的定义是只与你的直接朋友交谈,不与"陌生人"说话。如果 ...

酷学大叔 发布于 2019-09-10 11:45 评论(0)阅读(31)
0

代理模式

前言 小龙同学花费毕生绝学精心学习并制作了自动化测试之selenium ,但预定分享时间时,小龙龙同学胆怯了,于是大哥小强出马,帮他完成预定分享时间的工作 代理模式 为其他对象(小龙)提供一个代理(小强)以控制对这个对象的访问. 类图如下: 优点: 1. 职责清晰。 2. 高扩展性。 3. 智能化。 ...

songlingjie 发布于 2019-09-10 10:35 评论(0)阅读(11)
1

设计模式六大原则:开闭原则

目录: 设计模式六大原则:单一职责原则 设计模式六大原则:接口隔离原则 设计模式六大原则:依赖倒置原则 设计模式六大原则:里氏替换原则 设计模式六大原则:迪米特法则 设计模式六大原则:开闭原则 开闭原则(Open Close Principle): Software entities (classe ...

酷学大叔 发布于 2019-09-09 16:57 评论(0)阅读(52)
0

设计模式六大原则:依赖倒置原则

目录: 设计模式六大原则:单一职责原则 设计模式六大原则:接口隔离原则 设计模式六大原则:依赖倒置原则 设计模式六大原则:里氏替换原则 设计模式六大原则:迪米特法则 设计模式六大原则:开闭原则 依赖倒置原则(Dependence Inversion Principle): 1、高层模块不应该依赖底层 ...

酷学大叔 发布于 2019-09-09 08:53 评论(0)阅读(45)
1

Reactor模式

什么是Reactor模式 Reactor模式是一种设计模式,它是基于事件驱动的,可以并发的处理多个服务请求,当请求抵达后,依据多路复用策略,同步的派发这些请求至相关的请求处理程序。 Reactor模式角色构成 在早先的论文An Object Behavioral Pattern forDemulti ...

CodingDiary 发布于 2019-09-08 09:59 评论(0)阅读(130)
0

设计模式六大原则:接口隔离原则

目录: 设计模式六大原则:单一职责原则 设计模式六大原则:接口隔离原则 设计模式六大原则:依赖倒置原则 设计模式六大原则:里氏替换原则 设计模式六大原则:迪米特法则 设计模式六大原则:开闭原则 接口隔离原则(Interface Segregation Principle): 1、客户端不应依赖它不需 ...

酷学大叔 发布于 2019-09-07 16:20 评论(0)阅读(56)
3

错误日志之观察者模式

星期一 情景 早晨,项目组长来到小明身边,“有人反映咱们的项目有Bug” “什么Bug?” “不知道,你添加一个日志模块自己看记录去。” ”...“ 分析 在MVC全局过滤器中自己添加有异常过滤器。 Global.asax 1 public class MvcApplication : System ...

MedlarCanFly 发布于 2019-09-07 14:40 评论(3)阅读(265)
0

设计模式六大原则:里氏替换原则

目录: 设计模式六大原则:单一职责原则 设计模式六大原则:接口隔离原则 设计模式六大原则:依赖倒置原则 设计模式六大原则:里氏替换原则 设计模式六大原则:迪米特法则 设计模式六大原则:开闭原则 里氏替换原则: 子类应当可以替换父类并出现在父类能够出现的地方。比如:公司搞年度派对,都有员工都可以抽奖, ...

酷学大叔 发布于 2019-09-07 10:11 评论(0)阅读(47)
0

设计模式之策略模式

策略模式定义:分别封装行为接口,实现算法族,超类里放行为接口的对象,在子类里具体设定行为对象。原则就是:分离变化部分,封装接口,基于接口编程各种功能。此模式让行为算法的变化独立于算法的使用者。 好处:新增行为简单,行为类更好的复用,组合更方便。既有继承带来的复用好处,没有挖坑 闲话少说上代码: 定义 ...

横扫天下 发布于 2019-09-06 13:09 评论(0)阅读(12)
0

Monad 在实际开发中的应用

版权归作者所有,任何形式转载请联系作者。 作者:tison(来自豆瓣) 来源:https://www.douban.com/note/733279598/ Monad 在实际开发中的应用 不同的人会从不一样的角度接触 Monad。大多数网上的教程和介绍都从其严格的定义出发,加上几个玩具示例就当讲解完 ...

tisonkun 发布于 2019-09-06 12:24 评论(0)阅读(151)
0

设计模式六大原则:单一职责原则

目录: 设计模式六大原则:单一职责原则 设计模式六大原则:接口隔离原则 设计模式六大原则:依赖倒置原则 设计模式六大原则:里氏替换原则 设计模式六大原则:迪米特法则 设计模式六大原则:开闭原则 单一职责原则: 对象不应承担太多功能,正如一心不能而用,比如太多的工作(种类)会使人崩溃。唯有专注才能保证 ...

酷学大叔 发布于 2019-09-05 18:26 评论(0)阅读(84)
0

Java Builder 模式,你搞明白了么?

Builder 模式定义 Builder 模式中文叫作建造者模式,又叫生成器模式,它属于对象创建型模式,是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体 ...

平头哥的技术博文 发布于 2019-09-03 13:22 评论(0)阅读(148)