码迷,mamicode.com
首页 >  
搜索关键字:类设计    ( 582个结果
设计模式总结篇系列:桥接模式(Bridge)
在实际类设计过程中,有时会遇到此类情况:由于实际的需要,某个类具有两个或两个以上的维度变化,如果利用继承将每种可能的变化情况都定义成一个类,一是会导致类膨胀的问题,二是以后不太好维护和并且违背类的设计原则。那么面对这种情况,类改如何设计呢?这就是本文所要讲到的桥接模式。简单的讲,桥接模式是指:将抽象...
分类:其他好文   时间:2014-05-29 21:52:33    阅读次数:333
设计模式之单例模式
Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问点。这就提出了一个问题:如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?客户程序在调用某一个类时,它是不会考虑这个类是否只能有一个实例等问题的,所以,这应该是类设计者的责任,而不是类使用者的责任
分类:其他好文   时间:2014-05-28 02:29:28    阅读次数:237
面向切面编程(转)
面向切面编程(AOP是Aspect Oriented Program的首字母缩写),我们知道,面向对象的特点是继承、多态和封装。而封装就要求将功能分散到不同的对象中去,这在软件设计中往往称为职责分配。实际上也就是说,让不同的类设计不同的方法。这样代码就分散到一个个的类中去了。这样做的好处是降低了代码...
分类:其他好文   时间:2014-05-27 23:48:56    阅读次数:544
读书笔记2014第5本:《乔纳森传》
《乔纳森传》是一本关于苹果首席设计书的传记,由于我并不是一名美工人员,这本书看得很快,只对他在设计多种产品时简约和简化的理念留下了深刻印象。“我们需要这个部件吗?能让这件部件行使四个部件的功能吗?就这样,我们一遍一遍地重复着简化的过程。如果这种设计可以达到预期效果,不仅设备的生产过程能够得到简化,人...
分类:其他好文   时间:2014-05-26 13:03:40    阅读次数:187
Design Pattern - Observer 观察者设计模式
Spy on enemy. 使用这个模式可以根据某些事件自动更新。 设计思路: 1 设计一个基类,作为需要观察一个时间行为的接口类 2 设计一个观察者类,可以观察所有基类的衍生类, 这里使用set来保存这些需要更新的类。 一个事件相当于一个函数,事件发生(调用函数)同时自动调用需要更新的函数动作。 #pragma once #include #include #inclu...
分类:其他好文   时间:2014-05-26 06:16:49    阅读次数:284
设计模式之迪米特原则(LOD)(最少知识原则)
来源:迪米特法则(LoD)最初是用来作为面向对象的系统设计风格的一种法则,是很多著名系统,如火星登陆软件系统、木星的欧罗巴卫星轨道飞船的软件系统的指导设计原则。迪米特法则(LoD)又可分为两种:狭义的迪米特法则(LoD)和广义的迪米特法则(LoD)。概念:LOD:LOD,Law Of Demeter...
分类:其他好文   时间:2014-05-26 01:20:27    阅读次数:175
C++代理类设计(一)
作用:使设计的容器有能力包含类型不同而彼此相关的对象。 容器通常只能包含一种类型的对象,所以很难再容器中存储对象本身。存储指向对象的指针,虽然允许通过继承来处理类型不同的问题(多态性),但是也增加了内存分配的额外负担。所以我们通过定义名为代理的对象来解决该问题。代理运行起来和它所代表的对象基本相同,但是允许将整个派生层次压缩在一个对象类型中。 假设有一个表示不同种类的交通工具的类派生层次:...
分类:编程语言   时间:2014-05-25 10:06:40    阅读次数:249
设计模式-单键(Singleton)
【摘要】在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例? 这应该是类设计者的责任,而不是使用都的责任。【全文】单键模式(Singleton) 动机 在软件系统中,经常有.....
分类:其他好文   时间:2014-05-23 06:03:28    阅读次数:303
设计模式之策略模式
策略模式定义:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 简单定义:封装可以互换的行为,并使用委托来决定要使用哪一个。 OO原则: 封装变化 多用组合,少用继续。 针对接口编程,不针对实现编程。 以书中的Duck为例: Duck.java(抽象类,performFly()与performQuack()函数的实现委托给行为类,行为由子类...
分类:其他好文   时间:2014-05-22 23:20:51    阅读次数:346
敏捷系统设计浅谈
1.高度的结构性模块化2.只有理解了系统,可控制的变更和升级才可能实现(只需理解所负责的系统的相关参数及相应等级层次的行为)3.外部关心:系统暴漏的行为,提供的服务类型及该服务属性4.系统建立模型概念(抽象系统):分解成一组更小的相互关联的单元5.模块间的依赖关系需要由需求和功能来表达6.通过使用语...
分类:其他好文   时间:2014-05-21 11:46:16    阅读次数:231
582条   上一页 1 ... 54 55 56 57 58 59 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!