自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

岁月沉淀,积累财富

用笔墨写下奋斗的的征途

  • 博客(15)
  • 资源 (2)
  • 收藏
  • 关注

原创 设计模式大总结

为期1月份的设计模式之旅已走完,我们今天一起来总结咱们前面的东西;其实设计模式分为:创建模式、结构模式、行为模式。它们分别是对应那些呢?创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模

2015-02-27 11:08:42 604

原创 最复杂的设计模式---访问者模式

今天,我们一起来探讨最后一个、最复杂的设计模式 访问者模式;它表示一个作用于某个对象结构中的各个元素的操作。它使你可以在不改变个元素的类前提下,定义作用于这些元素的新操作。这个地方要注意:1.需要有个对象结构类用于存储循环遍历的方法的方式;2.访问者模式是对元素的操作;3.可以任意添加对这些元素的新操作。确实有点复杂,我们先看看其结构图:

2015-02-26 13:22:38 676

原创 由正则表达式引申到解释器模式

平时我们经常会用到正则表达式来解释我们输入框的内容是否符合邮箱、电话号码、身份证等。其他它就是对我们输入的值进行一个个字符的校验,当满足的时候则返回True,否则返回False;这就是咱们今天要讲的典型的解释器模式。解释器模式的应用不仅这些,在早年的非智能手机上,自己可以根据要求编写出音乐的字符串,然后播放出音乐...       我们来看看什么是解释器模式?给定义一个语言,定义它的文法的一种

2015-02-26 09:54:15 1475 1

原创 开发多用户注册使用的网站---享元模式

我们在实际项目开发过程中,肯定遇到以下类似的情况:专为小型公司注册并显示的公司信息,提供不同样式的显示方式;我们不会为每个注册的账户的公司都开发出一套量身打造的网站,而且才用共享技术的方式来实现核心技术、其他变化部分采用外部变量的方式传入进行操作。这就是今天我们要讲的享元模式。      什么是享元模式?运用共享的技术有效地支持大量细粒级的对象。换种说法,就是减少创建对象的数量,减少系统开销。

2015-02-25 13:34:03 882

原创 Form界面的各组件的工作原理---中介者模式

在VS项目开发过程中,我们创建一个页面后,系统为我们自动生成一些代码(.aspx,.cs),一个用于前台控件的摆放、另一个用于编写控件对应的事件操作。例如:我们在双击按钮后,系统自动生成一段Click的代码并在里面填写我们想要的操作。为什么界面上很多的按钮他们相互之间的操作都互不受影响?因为控件在操作的时候,不是自己操作自己,而是产生事件并发送的Form界面;再由Form界面按照接收到的事件,转发

2015-02-13 14:24:41 695

原创 与状态模式相似的设计模式---职责链模式

今天我们要讨论的设计模式与前面提到的状态模式非常相似,他们不能的地方:状态模式是每个具体的状态处理自己状态的事务,若非自己状态处理的数据则将状态移动到一下一个具体状态类处理;而职责链则是根据自己的职责完成本职工作,若不能完成则判断是否已经关联了下一个环节职责,若存在则调用下一环节的处理。他们两个一个是在具体类中已经设定了下一环节,而另外一个则是在客户端先设定好职责链。      什么是职责链模

2015-02-13 10:12:02 608

原创 命令模式的应用

命令模式用得比较少,一般都是在实际项目开发的后发现需要用的时候我们通过重构来实现。在现实生活中,我们也用这个设计模式;例如:咱们去餐馆点菜的时,服务员美眉会给我们简绍些好吃的菜,若点菜时,厨房没有了会提示我们;吃饭到中途时,菜多可撤销、菜少可添加。我们不需要关心具体是哪个大厨炒菜。这个就是我们今天要讲的设计模式----命令模式。      将一个请求封装成一个对象,从而使得你可用不同的请求对客

2015-02-12 15:16:34 1052

原创 以不变应万变---桥接模式

我们在项目开发的时候,尽量将不变的放在基类中,而让变化的部分在继承类中实现。但是在原始代码设计时,尽量先聚合--合成的设计原则,后在考虑用继承的方式(is-a 则考虑用继承方式);这样在后续维护的时候,就减少维护工作量。桥接模式就是这种方式。      什么是桥接模式?将抽象部分与它实现的部分分离,使得他们都可以独立地变化。嘻嘻,有点不好理解,转换一下:实现系统可能有多个角度分类,每一种分类都

2015-02-12 10:55:15 639

原创 最简单的设计模式---单例模式

在Android操作系统中,常常使用到一种模式----单例模式。其实我们在项目开发过程中,也经常用到;例如:在C/S模式中,我们对工具栏的初始化;点击按钮弹出的对话框等。通常我们用一个全局变量使得一个对象访问,但它不能防止实例被多次实例化;最好的办法就是让类直接管理自己的实例对象,并返回实例对象。      什么是单例模式?保证一个类中仅有一个实例;并提供一个访问它的全局访问点。也就是说,一个

2015-02-11 14:34:36 598

原创 常用的循环遍历数据方法---迭代器模式

咱们在C#项目开发过程中,经常使用foreach的方式来循环遍历某个聚合对象;可能已有很多人遗忘了它的工作原理;今天,我们从这里开始:实际上它是把已经聚集好的一个集合,我们不需要知道其实际的对象类型而循环读取数据;这个地方就用到了我们今天要讲的设计模式---迭代器模式;有兴趣的同学,可以下来了解一下IEumerator 和IEnumerable 接口。      什么是迭代器设计模式?提供一种

2015-02-11 09:59:32 861

原创 组合模式的详解

在Word文档中,我们经常会对一个字或者一段话进行设定它的大小、字体等属性;但很少停下来站在程序的角度,想想它是怎么样的原理?今天,我们就对此进行一个讲解。微软在设计的时候,应该是这样的:它把一个段话看成一个整体,而把单个字看成一个单独的部分;整体与部分之间的所有操作都是一样的,并用同一的方式进行调用(也就是说都是从同一个基类继承出来的)。在设计模式当中,我们把它叫组合模式。       如何

2015-02-09 14:23:35 563

原创 存储当前的数据信息,用于恢复---备忘录模式

咱们在打游击的时候,经常出现以下情况:自己在玩某种游戏快挂的时候,系统提示是否恢复到原来的状态进行重新开战。有人说这个是把这个类才有用原型模式克隆一个和原来一模一样的对象,把原来的数据信息保存起来,然后在恢复就OK了。错了,兄弟,这样会使得我们的对象的所有的方法暴露出来。在不破坏封装机构的前提下,我们如何用代码实现?      我们今天讲讲备忘录模式,解决刚才我们上段提到的问题。在不破坏封装的

2015-02-05 13:15:56 730

原创 亡羊补牢的方法---适配器模式

我们在VS2010环境中,经常从数据库中查询数据并返回给DataSet,然后绑定前台显示。他们都知道它的原理吗?实际上在这个过程当中,数据做了一次转换。我们后天先不管你是Sqlserver、DB2、Oracle等数据库,它先将数据查询出来并返回到DataAdapter中,然后由DataAdapter转换成DataSet;所以,我们在前台操作的时候根本不用去关心是哪种数据库。这个地方DataAdap

2015-02-05 10:43:48 644

原创 状态模式的应用

我们在项目开发过程中,经常遇到各种的判断情况,例如根据用户当前登录的的实际判断是上午、下午、或者晚上等。这个相对比较简单,我们可以用if else问题解决;但是若遇到算费功能(例如电费计算、中国移动每月的套餐实际的计算)就比较复杂了。如果我们在一个方法里面写太多的判断语句则针对后续维护都是很头疼的事情。我们应该尽量将这个语句进行拆分,让其更加简便。真正做到每个模块责任分解只做一个动作;不知道怎么弄

2015-02-03 13:49:10 898

原创 由观察者模式的升级,得出委托代理

大家在实际项目开发过程成,有这么一种情况:在VS2010开发环境中,当我们创建一个页面后,我们将鼠标移动到设计界面时候,系统会自动显示能拖的组件;当鼠标移动到代码界面时候,系统自动隐藏组件;这个是怎么实现的呢?我们慢慢来将。咱先看看什么是观察者模式:定义了1对多的依赖关系,让多个观察者对象同时监听某一个主题对象;这个主题对象发生变化的时候,会通知所有的观察者对象,让他们能够自己更新自己。就是说我们

2015-02-02 14:41:03 598

Redis、springSession共享包

实现对SpringSession的存储至内存Redis数据库中,方便Session共享

2016-12-04

lombok.jar

lombok.jar 对Java代码的冗余代码消除,简化项目代码

2015-07-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除