设计模式
着凉的皮皮虾
我将带头冲锋!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
设计模式之简单工厂简介使用
设计模式之简单工厂简介使用 简单工厂简介 简单工厂百科描述 使用 现在我们模拟实现一个简单计算器的功能出发来编写基于简单工厂模式的代码: 新建抽象Operation计算类 新建加减乘除类分别继承Operation类 加法类 减法类 乘法类 除法类 新建OperationFactory类进行加减乘除参数的组装 这里运用多态,根据传递的运算符的不同,而创建不同的对象,进行一波测试 查看输...原创 2019-08-07 01:25:11 · 552 阅读 · 0 评论 -
设计模式之策略模式
设计模式之策略模式 定义:它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。 接下来,通过一组计算摩托车购置税的程序来走进策略模式: 基本结构 Context:用一个ConcreteStrategy来配置,维护对一个Strategy对象的引用 Strategy:策略类,定义所有支持的算法的公共接口 ConcreteStrategyA:具体策略类,...原创 2019-08-11 23:37:23 · 465 阅读 · 0 评论 -
Spring中的Bean实例化策略
Spring中的Bean实例化策略 InstantiationStrategy接口,定义所有支持的实例化策略的公共接口 public interface InstantiationStrategy { Object instantiate(RootBeanDefinition var1, @Nullable String var2, BeanFactory var3) throws Bea...原创 2019-08-12 00:51:26 · 683 阅读 · 0 评论 -
设计模式之静态代理和动态代理模式
设计模式之静态代理和动态代理模式 首先需要理解一下什么是代理的思想:经过我不断的提炼总结以及个人的理解,代理就相当于给类穿上了一个马甲,类本身具有的行为该有的一个没少,却相应的增加了一些功能。举个栗子:在Java的这种垂直的继承实现结构编程中,如果我们有三个不同的动物类,都有吃东西的功能,我想统计它们吃东西的时间,如果按照传统的方式,就必须要调用三次吃东西的方法,每次计算前后时间差。这种时候,代理...原创 2019-08-13 00:46:38 · 573 阅读 · 0 评论 -
单一职责原则
单一职责原则 简介:就一个类而言,应该仅有一个引起它变化的原因 why? 当一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其它职责的能力,这种耦合会导致脆弱的设计,当变化发生时,设计会遭受意想不到的破坏。 软件设计中的许多内容,就是发现职责并把那些职责相互分离,其实要判断是否应该分离出类来,也不难,就是你能够想到多于一个的动机去改变一个类,那么这个类就...原创 2019-08-26 22:38:17 · 422 阅读 · 0 评论 -
开放-封闭原则(OCP)
开放-封闭原则(OCP) 简而言之就是对扩展开放,对修改封闭 几乎所有的系统,都不可能一成不变,只要是需求,就一定是会变化的。 如何在面对需求的变化的时候,设计的软件可以相对容易修改,不至于新的需求一来,就把程序推到重来。怎么样的设计才能面对需求的改变却可以保持相对稳定,从而使得系统可以在第一个版本以后不断推出新的版本。这就是OCP原则要告诉我们的东西。 OCP原则的精神 面对需求,对程序的改动是...原创 2019-08-26 22:47:48 · 359 阅读 · 0 评论 -
依赖倒转原则及里氏代换原则
依赖倒转原则及里氏代换原则 依赖倒转原则 抽象不应该依赖于细节,细节应该依赖于抽象 高层模块不应该依赖低层模块,两个都应该依赖于抽象 简而言之就是:面向接口编程,不要对实现编程 这话听起来可能有些难以理解,不妨,我举个例子: 就跟攒机似的,主板与其它各个部件(cpu,显卡等),都是通过各种接口连接到一起正常的进行工作的。主板不关心具体cpu的型号,反正就这么大的AMD的cpu,你给我插上就行了,...原创 2019-08-26 23:35:42 · 443 阅读 · 0 评论
分享