会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
殇曲
博客园
首页
新随笔
联系
订阅
管理
1
2
3
4
5
下一页
2017年6月13日
模版方法模式
摘要: 一、 基本概述 下面列出咖啡、茶的冲泡方法。 1.咖啡冲泡方法 (1) 把水煮沸 (2) 用沸水冲泡咖啡 (3) 把咖啡倒进杯子 (4) 家牛奶和糖 2.茶的冲泡方法 (1) 把水煮沸 (2) 用沸水浸泡茶叶 (3) 把茶倒进杯子 (4) 加柠檬 在使用代码来完成这些方法时,我们一般想到的创建2个类
阅读全文
posted @ 2017-06-13 20:34 殇曲?
阅读(340)
评论(0)
推荐(0)
2017年5月18日
适配器和外观模式
摘要: 一、 基本概述 1:现实中存在三角插头适配成双插头,等其他各种形式的适配器来连接不兼容的两个物体。同理在代码中也存在适配器模式来兼容两个不同的代码接口。 2:KTV包间打开一个启动开关,就打开party模式(音响、屏幕、灯光、换气、点歌台等),一个简单的开关来控制其他更多的任务。同理在代码中也存在外
阅读全文
posted @ 2017-05-18 15:52 殇曲?
阅读(473)
评论(0)
推荐(0)
2017年4月23日
命令模式
摘要: 一、 基本概述 问题:假设有一个控制器,该控制器上有7个可编程的插槽,每个都可以指定到一个不同的家电装置,每个插槽都有对应的开关按钮。这个遥控器还具备一个整体的撤销按钮。厂家已经提供了控制家电基本处理类。希望你能够创建一组控制遥控器的API,让每个插槽都能够控制一个或一组装置。(如下图,厂商类) 分
阅读全文
posted @ 2017-04-23 15:53 殇曲?
阅读(475)
评论(0)
推荐(0)
2017年3月25日
单件模式
摘要: 一、基本概述 单件模式:确保一个类只有一个实例,并提供一个全局访问点。 解析如下: 1)首先,该Singleton的构造函数必须是私有的,以保证客户程序不会通过new()操作产生一个实例,达到实现单例的目的; 2)因为静态变量的生命周期跟整个应用程序的生命周期是一样的,所以可以定义一个私有的静态全局
阅读全文
posted @ 2017-03-25 15:56 殇曲?
阅读(434)
评论(0)
推荐(0)
2017年3月21日
工厂模式
摘要: 一、简单工厂 简单工厂其实不是一个设计模式,反而比较像是一种编程习惯。但由于经常被使用,所以给它一个“模式荣誉奖”。有些开发人员的确是把这个编程习惯误认为是“工厂模式”,不要因为简单工厂不是一个“真正的”模式,就忽略了它的用法。如下图显示的简单工厂使用类图(具体代码在文档最后列表中)。 ★再提醒一次
阅读全文
posted @ 2017-03-21 15:17 殇曲?
阅读(706)
评论(0)
推荐(0)
2017年3月2日
装饰者模式
摘要: 一、基本概述 问题:有咖啡店,卖多种咖啡,以及调料(如豆浆、牛奶、奶油等)。现有的订单系统的类结构如下。 二、分析说明 上面的设计方式存在的一些问题? 小结: 1.尽管继承的威力强大,但是它并不总是能够实现最有效弹性和最好维护的设计。 2.利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类
阅读全文
posted @ 2017-03-02 09:26 殇曲?
阅读(325)
评论(0)
推荐(0)
2017年2月22日
观察者模式(发布--订阅模式)
摘要: 一、场景:有一个气象站,检测气象后发布气象信息,有3个观察者会接受气象的发布信息。 二、普通的处理方式: 三、观察者模式处理方式: OO原则:为交互对象之间的松耦合设计而努力。(这个是第四条,后续还有几条) 松耦合的设计之所以能让我们建立有弹性的OO系统,能够应对变化,是因为对象之间的互相依赖降到了
阅读全文
posted @ 2017-02-22 23:02 殇曲?
阅读(475)
评论(0)
推荐(0)
2017年2月13日
设计模式之策略模式
摘要: 问题:一个动作冒险游戏,有几个角色(如国王、皇后、骑士等),以及自身的武器使用。如何用代码进行实现。 方式一:定义个角色(character)基类,内中含有血量、怒气、外形显示,然后国王(king)与皇后(queen)类继承角色类。 当实际的角色类需要战斗技能时,只需要在基类(character)中
阅读全文
posted @ 2017-02-13 22:10 殇曲?
阅读(491)
评论(0)
推荐(1)
2017年1月23日
C#学习笔记15
摘要: 1.平台互操作性和不安全的代码:C#功能强大,但有些时候,它的表现仍然有些“力不从心”,所以我们只能摒弃它所提供的所有安全性,转而退回到内存地址和指针的世界。 C#通过3种方式对此提供支持。 (1)第一种方式是通过平台调用(Platform Invoke,P/Invoke)来调用非托管代码DLL所公
阅读全文
posted @ 2017-01-23 22:36 殇曲?
阅读(566)
评论(0)
推荐(0)
C#学习笔记14
摘要: 1.在多个线程的同步数据中,避免使用this、typeof(type)、string进行同步锁,使用这3个容易造成死锁。 2.使用Interlocked类:我们一般使用的互斥锁定模式(同步数据)为Lock关键字(即Monitor类),这个同步属于代价非常高的一种操作。除了使用Monitor之外,还有
阅读全文
posted @ 2017-01-23 21:51 殇曲?
阅读(917)
评论(0)
推荐(0)
1
2
3
4
5
下一页
公告