【设计模式】
文章平均质量分 80
钟艾伶
这个作者很懒,什么都没留下…
展开
-
工厂方法模式VS简单工厂
通过联系实际,我们利用一个学雷锋做好事的例子,来体会工厂方法模式和简单工厂的区别与联系。1、写一个雷锋类,学生继承于雷锋,通过实例化多个对象去完成洗衣、打扫等方法。2、但是学生都是短期的,如若我们需要增加一个长时间为老人服务的团体——社区志愿者类,同样继承于雷锋。再写出简单工厂类,运用多态,需要社区志愿者或学生时,客户端直接写出需要的指令,实例化不同的类(学生、志愿者两个类)。原创 2014-03-11 12:15:22 · 1496 阅读 · 41 评论 -
职责链模式
剧情简要: 学习此模式,让笔者联想到自然界的生物链。打个比方:大鱼吃小鱼,小鱼吃虾米。河里的小虾米问大鱼,“你要不要吃我啊?”大鱼说“你太小了,吃了==没吃,return懒得吃!”然后虾米又问小鱼、小螃蟹、小河马同样的问题。其实如果小虾米这么想自我了结的话,根本不用这么费劲。这就开始了我们职责链模式的介绍和使用。主角上场: 所谓职责链,其实就是在以小虾米为被原创 2014-03-28 20:25:42 · 1070 阅读 · 33 评论 -
抽象外观
大家可能都有过外出旅游之前把必备品打包放进旅行箱的经历。其实外观模式就类似于“打包”这个动作。给各种小物件穿上一件名为“Facade”的外衣,把放在窗台啊,地板啊,厨房啊各个地方的必需品打包,放进这个箱子里面。用的时候就直接在这个包里去找,而不用乱七八糟的四处搜寻。这个箱子就是我们找到需要对象的接口,而外观模式的中心就是为各子系统提供这样一个抽象接口,使得子系统更加容易使用。 再者原创 2014-04-02 15:20:00 · 1226 阅读 · 27 评论 -
设计模式之设计原则(一)
在对面向对象不断学习的过程中,在原来的基础之上,总会有新的收获,进一步的认识。下面跟大家分享:面向对象设计中的应遵循的三大原则。单一职责原则(SRP)一、什么是单一职责? 生活中,我们所使用的手机功能不胜枚举,但是就单一拍摄功能而言,却不敌专业DV。类与之同理,应遵循单一职责原则,也就是尽力使之功能单一,引起其变化的因素单一。二、为什么要遵循单一职责原则?原创 2014-03-05 19:21:23 · 1420 阅读 · 34 评论 -
饿汉懒汉都是好汉——单例模式
前情回顾: 不知大家是否曾有过类似经历。在做机房收费的时候,单击菜单栏的某个按钮,click 一次便出现一次此窗体,从而导致一个主界面里出现过多相同的窗体,但理想状态是不管如何单击,一个主界面我们只想要某窗体只出现一次。此时,单例模式便可派上大用场。计划生育,还是一个好:懒汉单例模式: 单例模式是相对于众多模式中最严谨守法的好模式。它能保证一个类只有唯一一个对象被实例化原创 2014-03-27 11:36:36 · 1470 阅读 · 40 评论 -
设计模式——怎么就给分成三类了呢?
大家都说设计模式可根据目的划分为:1、创建型(creational):主要用于处理对象的创建,实例化对象2、结构型(structural):处理类或对象间的组合3、行为型(behavioral):描述类或对象怎样进行交互和职责分配 但是让我疑问的是,为什么大家都约定俗成的把n个设计模式分门别类到这三个类别中去呢?分类的具体依据呢?创建型就真的用来创建对象?结构型就组合对象吗?它原创 2014-03-24 20:49:20 · 4073 阅读 · 41 评论 -
设计模式之设计原则(二)
笔者前文已写出自己对设计模式重要原则(SRP、OCP、DIP、LSP)四大原则的理解。详见设计模式之设计原则(一)此文将继续对设计六大原则中的迪米特法则、合成聚合复用原则进行学习。 迪米特法则(LOD)一、什么是迪米特法则?1、迪米特法则(Law Of Demeter)也称最少知识原则(Least Knowledge Principle)。如果两原创 2014-03-24 11:18:10 · 1079 阅读 · 30 评论