随笔分类 -  软件设计

架构&框架&设计模式
摘要:1. 概述 当对象的构造函数非常复杂,在生成新对象的时候非常耗时间和资源的情况下,通过复制一个指定类型的对象来创建更多同类型的对象。这个指定的对象可被称为“原型”对象。原型模式的主要思想是基于现有的对象克隆一个新的对象,一般是由对象的内部提供克隆的方法,通过该方法返回一个对象的副本。 浅拷贝和深... 阅读全文
posted @ 2014-06-09 16:22 飛雲若雪 阅读(448) 评论(0) 推荐(0)
摘要:1. 概述 开发过程中,当遇到一个“复杂的对象”在创建工作,该对象由一定各个部分的子对象用一定的算法构成,由于需求的变化,复杂对象的各个部分经常面临剧烈的变化,但将它们组合在一起的算法相对稳定。如何提供一种“封装机制”来隔离复杂对象的各个部分的变化,从而保持系统中的稳定构造算法而不随需求的变化而变... 阅读全文
posted @ 2014-06-09 15:54 飛雲若雪 阅读(343) 评论(0) 推荐(0)
摘要:1. 概述 编程中总有一些类的对象需要是唯一的。例如:通过数据库句柄到数据库的连接是独占的,我们希望应用程序中共享数据库句柄,因为连接在打开或关闭时,会有开销。 让类自身负责保存它的唯一实例(静态变量)。这个类可以保证没有其他实例可以被创建,并且它可以提供一个访问该实例的方法(静态方法)。2. ... 阅读全文
posted @ 2014-06-09 15:32 飛雲若雪 阅读(325) 评论(0) 推荐(0)
摘要:1. 概述 在编程中,经常需要new一些对象,但是在一些情况下, new操作直接生成对象会带来一些问题。举例来说,许多类型对象的创建需要一系列的步骤,在这种情况下,新对象的建立就是一个“过程”,不仅是一个操作。所以,如何能轻松方便地构造对象实例,而不关心构造对象实例的细节和复杂过程呢?2. 应用场... 阅读全文
posted @ 2014-06-09 15:12 飛雲若雪 阅读(426) 评论(0) 推荐(0)
摘要:1. 概述 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。 策略模式是对算法的封装,它把算法的责任和算法本身分割开,委派给不同的对象管理。2. 应用场景 (1)多个类只区别在表现行为不同,在运行时动态选择具体要执行的行... 阅读全文
posted @ 2014-06-06 15:49 飛雲若雪 阅读(458) 评论(0) 推荐(0)
摘要:1. 概念 架构:简单的说架构就是一个蓝图,是一种设计方案,将客户的不同需求抽象成为抽象组件,并且能够描述这些抽象组件之间的通信和调用。 框架:软件框架是项目软件开发过程中提取特定领域软件的共性部分形成的体系结构,不同领域的软件项目有着不同的框架类型。框架不是现成可用的应用系统。而是一个半成品,... 阅读全文
posted @ 2014-04-29 20:29 飛雲若雪 阅读(549) 评论(0) 推荐(0)
摘要:一、架构图二、解决方案中的项目设计AbstractFactory(抽象工厂)IBLL(业务逻辑层)BLLIDAL(数据访问层)SqlServerDAL(SqlServer数据访问)````Model(数据模型)ToolsLibrary(工具类)WebMVCApplication(Web MVC应用程序)三、具体的实现1、AbstractFactory(1)Cache.cs 反射出实例很耗费性能,这里使用缓存来减轻负担///<summary>///抽象工厂的实现,因为反射出实例很耗费性能,所以运用了缓存来减轻负担///</summary>publicclassCache{ 阅读全文
posted @ 2013-04-13 11:13 飛雲若雪 阅读(1281) 评论(3) 推荐(1)