本月博客排行
-
第1名
龙儿筝 -
第2名
lerf -
第3名
fantaxy025025 - johnsmith9th
- xiangjie88
- zysnba
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- benladeng5225
- e_e
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- gengyun12
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- arpenker
- tanling8334
- gaojingsong
- kaizi1992
- xpenxpen
- 龙儿筝
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- xiangjie88
- wangchen.ily
- Jameslyy
- luxurioust
- lemonhandsome
- mengjichen
- jbosscn
- zxq_2017
- lzyfn123
- nychen2000
- forestqqqq
- wjianwei666
- ajinn
- zhanjia
- siemens800
- Xeden
- hanbaohong
- java-007
- 喧嚣求静
- mwhgJava
最新文章列表
设计模式之Facade
定义:
GOF《设计模式》一书对Facade模式是这样描述的:
为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使子系统更加容易使用。
使用场景:
1、为一个复杂子系统提供一个简单接口时,由于子系统往往因为不断演化而变得越来越复杂,但这种变化不应该影响到客户的调用,此时使用 Facade 模式对外提供一个访问的接口; ...
设计模式——组合模式(Composite)
Composite模式定义:
将对象以树形结构组织起来,以达成“部分-整体” 的层次结构,使得客户端对单个对象和组合对象的使用具有一致性。
Composite比较容易理解,想到Composite就应该想到树形结构图。组合体内这些对象都有共同接口,当组合体一个对象的方法被调用执行时,Composite将遍历(Iterator)整个树形结构,寻找同样包含这个方法的对象并实现调用执行。 ...
JAVA设计模式学习2——面向对象设计原则
软件设计的核心是提高软件的可复用性和可维护性。通常一个软件之所以可复用性和可扩展性差的原因在于设计过于僵硬,过于脆弱,复用率低,粘度过高等原因导致的,这时候需要想办法提高可扩展性,灵活性和可插入性,从而提高软件的可复用性和可维护性。一般可维护性和可复用性不能同时能达到目的,只有遵循一定的设计原则,设计出来的系统才能同时满足可复用性和可维护性。面向对象设计原则主要有如下几条:
1、“开闭”原则( ...
JAVA设计模式学习3——设计模式概述
上一节里提到设计模式分为创建模式,结构模式和行为模式,这节我们来学习它们的定义以及它们包含哪些具体的设计模式。一、创建模式创建模式是对类的实例化过程的抽象化。在一些系统里,可能需要动态的决定怎样创建对象,创建哪些对象,以及如何组合和表示这些对象。创建模式描述了怎么构造和封装这些动态的决定。创建模式分为类的创建模式和对象的创建模式两种。1、类的创建模式 类的创建模式使用继承关系,把类的创建延迟到子 ...
JAVA设计模式学习1——统一建模语言UML
今天开始重温设计模式,我想把自己学习的过程分享给大家,同时希望大家多多留言来讨论,相互学习相互进步。设计模式学习过程中需要借助UML来建模,把设计模式图形化,从而让我们更好的理解设计模式内容。什么是UML,UML是统一建模语言(Unified Modeling Language)的缩写,是当今软件设计的标准图标式设计语言。UML包括1、用例图(Use case diagrams),2、类图(Cl ...
面向对象设计原则
1、单一职责原则(Single Responsibility Principle)
一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。
2、接口隔离原则
使用 ...
设计模式之责任链模式
刚学习了责任链模式,感觉还是蛮不错的,随手记录了下学习的内容。
责任链模式:责任链模式用于弱化请求发生者和请求处理者之间的关系。当多个对象都可以对请求进行处理,但不同的对象能处理的请求类型不同时,可以通过指向另一个对象的引用把这些对象连成一条责任链。当 Client 发出一个请求时,并不知道具体由哪个对象进行处理,它看到的只是一条责任链,将请求直接交给责任链,请求会在责任链中传递,直到找到一个能够 ...