设计模式
文章平均质量分 93
彬_子
这个作者很懒,什么都没留下…
展开
-
设计模式:6大设计原则
单一职责原则单一职责原则(Single Responsibility Principle,简称SRP)定义:应该有且仅有一个原因引起类的变更。 单一职责原则要求一个接口或类只有一个原因引起变化,也就是一个接口或类只有一个职责。优点:类的复杂性降低,实现什么职责都有明确的定义。可读性提高,复杂度降低。可维护性提高。变更引起的风险降低,单一职责使用于接口、类,同时也适用原创 2017-12-20 00:02:45 · 157 阅读 · 0 评论 -
设计模式:工厂方法
工厂方法模式的定义定义一个用于创建对象的接口, 让子类决定实例化哪一个类。 工厂方法使一个类的实例化延迟到其子类。工厂方法模式的通用类图如图所示。在工厂方法模式中, 抽象产品类Product负责定义产品的共性, 实现对事物最抽象的定义; Creator为抽象创建类, 也就是抽象工厂, 具体如何创建产品类是由具体的实现工厂ConcreteCreator完成的。/** * 抽象产品类 */pub...原创 2018-06-14 10:58:57 · 171 阅读 · 0 评论 -
设计模式:单例模式
单例模式的定义单例模式( Singleton Pattern) 是一个比较简单的模式, 其定义如下:确保某一个类只有一个实例, 而且自行实例化并向整个系统提供这个实例。单例模式的通用类图如图所示:Singleton类称为单例类, 通过使用private的构造函数确保了在一个应用中只产生一个实例, 并且是自行实例化的( 在Singleton中自己使用new Singleton()) 。 单例模式的通...原创 2018-06-14 10:33:14 · 256 阅读 · 0 评论 -
设计模式:门面模式
定义门面模式也叫外观模式,是一种比较常见的封装模式,定义如下: 一个子系统的外部与其内容的通信必须通过一个统一的对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。门面模式注重“统一“,也就是提供一个访问子系统的接口,除了这个接口不允许有任何访问子系统的行为发生。其通用类图如下:类图很简单,但是它代表的意义可是异常复杂,SubSystem是子系统中所有类的简称。门面原创 2018-01-28 15:54:18 · 788 阅读 · 0 评论 -
设计模式:代理模式
定义为其他对象提供一种代理以控制对这个对象的访问。代理模式通用类图代理模式也叫委托模式,它是一种设计技巧,许多其他的模式如状态模式、策略模式、访问者模式本质上是在更特殊的场合采用委托模式。代理模式可以提供非常好的访问控制。抽象主题类public interface Subject { //定义一个方法 public void request();}真实主题类public clas原创 2018-01-19 17:03:26 · 205 阅读 · 0 评论 -
设计模式:策略模式
定义策略模式是一种比较简单的模式:定义一组算法,将每个算法封装起来,并且使他们之间可以互换。策略模式的通用类图:策略模式使用的是面向对象的继承和多态机制,非常容易理解和掌握,Context封装角色也叫上下文角色,起承上启下封装作用,屏蔽高层模块对策略、算法的直接访问,封装可能存在的变化。Strategy抽象策略角色策略、算法的原创 2018-01-14 04:52:10 · 260 阅读 · 0 评论 -
设计模式:模板方法模式
模板方法模式:定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板方法非常简单,仅仅使用了Java的即成机制,但它是一个应用非常广泛的模式,其中AbstractClass叫做抽象模版,它的方法分为两类:基本方法:由子类实现,并且在模板方法中被调用。模板方法:可以有一个或几个,一般是一个具体的方法,也就是一个原创 2017-12-17 10:11:14 · 411 阅读 · 0 评论 -
MVC、MVP、MVVM
MVCMVC,Model View Controller,是软件架构中最常见的一种框架,简单来说就是通过controller的控制去操作model层的数据,并且返回给view层展示,具体见下图当用户出发事件的时候,view层会发送指令到controller层,接着controller去通知model层更新数据,model层更新完数据以后直接显示在view层上,这就是MVC的工作原理。原创 2017-12-07 16:09:26 · 257 阅读 · 0 评论 -
设计模式:适配器模式
定义将一个类的接口变换称客户所期待的另一种接口,从而使原本接口不匹配而无法在一起工作的两个类能够在一起工作。适配模式通用类图:适配器模式就是把一个接口或类转换成其他的接口或类,从另一个方面来说,适配器模式就是一个包装模式,它把Adaptee包装成一个Target接口的类,加一层衣服,包装成另一类。下面来看看适配器的三个角色:Tagret目标角色: 该角色定义把其他类转换为何种接口,也就是我们所期原创 2017-12-24 16:15:25 · 165 阅读 · 0 评论 -
重构改善即有代码的设计
(一)重构原则1、何谓重构对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。另一种解释是:使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构。重构不止是代码整理,它提供了一种高效且受控的代码整理技术2、为何重构改进软件设计:如果没有重构,程序的设计会逐渐变质,重构很像是在整理代码,你所做的就是让所有的东西回到应处的位置上。帮...原创 2018-11-30 18:07:26 · 1046 阅读 · 0 评论