其他设计模式
摘要:一、适配器模式(不是软件设计阶段考虑的,是随后维护中): 将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于类的不匹配所造成的类的兼容问题。分为类的适配器模式、对象的适配器模式、接口的适配器模式。 二、委派模式 负责任务的调度和分配任务,跟代理模式很像,可以看做是特殊情况下的静态代理的全
阅读全文
代理模式
摘要:一、定义 代理模式是为其他对象提供一种代理,来控制对这个对象的访问。代理对象在客户端与目标对象之间起到中介作用。数据结构型设计模式。 二、作用 1.保护目标对象 2.增强目标对象 三、两种代理模式 静态代理:显示声明被代理对象 动态代理:可以动态配置和替换被代理对象,使用更为灵活 区别: 静态代理编
阅读全文
原型模式
摘要:一、定义:原型模式是指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的实例。 二、使用场景 1)类初始化消耗资源较多 2)new产生的对象需要非常繁琐的过程(数据准备、访问权限等) 3)构造方法比较复杂 4)循环体中产生大量对象 注:spring中使用原型模式的地方特别多,例如scope="
阅读全文
单例模式
摘要:单例模式是指确保在任何情况下,一个类只有一个实例,并提供一个全局的访问点。这样减少了内存开销,也避免了对资源的多重占用。单例模式看起来简单,实现起来也很简单。缺点是没有接口,扩展困难,若要扩展单例对象,只能修改代码,没有其他途径。 一、饿汉式单例:加载类时创建类对象,绝对线程安全,在线程还未出现以前
阅读全文
工厂模式简介
摘要:工厂模式用于创建对象时,有简单工厂,工厂方法、抽象工厂。 简单工厂:由一个工厂对象决定创建哪个实例的对象。简单工厂适用于创建对象少的场景,客户端只需要传入参数,对于如何创建不用关心。 缺点:工厂类职责过重,不易于扩展复杂结构的实例对象,不符合开闭原则。 工厂方法:是指定义一个创建对象的接口,各个不同
阅读全文
设计模式
摘要:不用设计模式并非不可以,但用设计模式最重要的是帮助我们更好的解决问题,设计模式最重要的是解耦。设计模式在使用中不是单独来用的,多是多个设计模式混合使用。 一、使用设计模式的好处: 1.写出优雅的代码 2.更好的重构代码 二、设计模式根据特点分类 1.创建型模式:工厂模式、单例模式、原型模式 2.结构
阅读全文
软件架构设计的七大原则
摘要:一、开闭原则(是面向对象开发中最基础的原则,它指导建立更加稳定灵活的系统) 开闭原则是对扩展和修改行为的一个原则,指的是软件中的函数、类、模块应该对扩展开放,对修改关闭。强调的是用抽象构建框架,用实现扩展细节。常用于解决的问题如:更新版本时,尽量在不修改源代码,但增加新功能。 二、依赖倒置 依赖倒置
阅读全文