随笔分类 -  一起学习设计模式

摘要:模式目标 扩展系统功能 前言 尽管目前房价依然在涨,但依旧阻止不了大家对新房的渴望和买房的热情。如果大家买的是毛坯房,还要面临一个艰巨的任务,那就是装修。对于新房进行装修,并没有改变房屋用于居住的本质,但是它可以让房子变得更漂亮、更温馨、更实用、更能满足居家需求。在软件设计中,也有一种类似新房装修的 阅读全文
posted @ 2021-04-25 08:30 ImLxp 阅读(96) 评论(1) 推荐(0) 编辑
摘要:模式目标 树形结构的处理 前言 树形结构在软件中随处可见,例如操作系统中的目录结构、应用软件中的菜单、办公系统中的公司组织结构等。如何运用面向对象的方式来处理这种树形结构是组合模式需要解决的问题。组合模式通过一种巧妙的设计方案使得用户可以一致性的处理整个树形结构或者树形结构的一部分,也可以一致性的处 阅读全文
posted @ 2021-04-18 18:04 ImLxp 阅读(135) 评论(0) 推荐(0) 编辑
摘要:模式目标 处理多维度变化 前言 现实生活中我们经常会遇到两种类型的笔,他们分别是毛笔和蜡笔。假设需要使用大、中、小3种型号的画笔来绘制12种不同的颜色。如果使用蜡笔,需要3 X 12 = 36 支。但是如果是毛笔的话,就不一样了,我们只需要3种型号的毛笔,和12盒颜料即可,涉及的对象个数仅为 3 + 阅读全文
posted @ 2021-04-10 23:19 ImLxp 阅读(159) 评论(0) 推荐(0) 编辑
摘要:前言 有的笔记本电脑工作电压是20V,但是国家标准用电电压是220V,如何让20V的笔记本电脑能够在220V的电压下工作?答案是引入一个电源适配器,俗称充电器/变压器,有了这个电源适配器,生活用电和笔记本电脑即可兼容。 在软件开发中,也存在类似的不兼容的情况,也可以像引入电源适配器一样引入一个被称为 阅读全文
posted @ 2021-04-03 21:59 ImLxp 阅读(113) 评论(0) 推荐(0) 编辑
摘要:前言 没有人买车会只买一个轮胎或一个方向盘,大家买的都是一辆包含轮胎、方向盘和发动机等多个部件的完整汽车。如何将这些部件组装成一辆完整的汽车并返回给用户,这是建造者模式需要解决的问题。 建造者模式又称生成器模式,它是一种较为复杂、使用频率也相对较低的创建型模式。建造者模式向客户端返回的不是一个简单的 阅读全文
posted @ 2021-03-22 17:48 ImLxp 阅读(38) 评论(0) 推荐(0) 编辑
摘要:前言 《西游记》中的孙悟空吹猴毛变出很多猴兵的故事想必大家都知道,《火影》中鸣人的多重影分身大部分人应该也是都知道,他们都可以根据自己的形象,复制(又称克隆)出很多和自己一摸一样的“身外身”来。在设计模式中也存在一个类似的模式,可以通过一个原型对象克隆出多个一模一样的对象,该模式被成为原型模式。 一 阅读全文
posted @ 2021-03-15 08:32 ImLxp 阅读(117) 评论(0) 推荐(0) 编辑
摘要:前言 在工厂方法模式中通过引入工厂等级结构,解决了简单工厂模式中工厂类职责过重的问题。但是由于工厂方法模式中每个工厂只生产一类产品,这样可能会导致系统中存在大量的工厂类,势必会增加系统的开销。 为了解决这个问题,可以考虑将一些相关的产品组成一个“产品族”,由同一个工厂来统一生产,这就是抽象工厂模式的 阅读全文
posted @ 2021-03-08 08:17 ImLxp 阅读(123) 评论(0) 推荐(0) 编辑
摘要:简单工厂模式虽然简单,但是存在一个很严重的问题:由于静态工厂方法是根据传入的参数不同来创建不同的产品的,所以当系统中需要引入新产品时,就需要修改工厂类的源代码,这将违背开闭原则。为了实现增加新产品而不修改原有代码,工厂方法模式应运而生。 一、日志记录器的设计 A科技公司欲开发一个系统运行日志记录器( 阅读全文
posted @ 2021-02-28 08:52 ImLxp 阅读(194) 评论(0) 推荐(0) 编辑
摘要:工厂模式是最常用的一类创建型设计模式。我们所说的工厂模式是指工厂方法模式,它也是使用频率最高的工厂模式。 简单工厂模式是工厂方法模式的小弟,它不属于GoF 23种设计模式,但是在软件开发中应用也颇为频繁,通常将它作为学习其它工厂模式的入门。 一、图表库的设计 A科技公司计划使用C#语言开发一套图表库 阅读全文
posted @ 2021-02-22 08:26 ImLxp 阅读(126) 评论(0) 推荐(0) 编辑
摘要:单例模式(Singleton Pattern):确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 单例模式是创建型模式的一种,是创建型模式中最简单的设计模式 用于创建那些在软件系统中独一无二的对象。 虽然单例模式很简单,但是它的使用频率还是很高的。 学习难度:★☆☆☆☆ 使用频率:★ 阅读全文
posted @ 2021-02-16 09:28 ImLxp 阅读(126) 评论(0) 推荐(0) 编辑
摘要:面向对象设计的目标之一就是可维护性复用。包括: 1、设计方案和代码的复用 2、系统要易于扩展和修改 面向对象的设计原则就可以作为上述目标的指导方针,这些原则蕴含在很多的设计模式中,是前辈们从许多的设计方案中总结出来的指导性原则。 最常用的7种设计原则: 单一职责原则(Single Responsib 阅读全文
posted @ 2021-02-09 09:18 ImLxp 阅读(126) 评论(0) 推荐(0) 编辑
摘要:前言 武侠小说中武术分招式和内功,比如独孤九剑就是招式,九阳神功就是内功。招式可能照猫画虎很快就能学会,但是内功心法则需要日积月累,一点一点的修炼。 在我们日常开发中也分招式和内功。比如我们常见的C#、Java、C++、等编程语言,Visual Studio、Eclipse等开发工具,ASP.NET 阅读全文
posted @ 2021-02-08 08:30 ImLxp 阅读(87) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示