- 博客(160)
- 资源 (6)
- 收藏
- 关注
转载 桥接模式(Bridge Pattern)
动机(Motivate): 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度?意图(Intent): 将抽象部分与实现部分分离,使它们都可以独立的变化。 ------《设计模
2011-06-19 23:55:00 1228
转载 适配器模式(Adapter Pattern)
适配(转换)的概念无处不在......<br />适配,即在不改变原有实现的基础上,将原先不兼容的接口转换为兼容的接口。<br />例如:二转换为三箱插头,将高电压转换为低电压等。<br /> <br />动机(Motivate):<br /> 在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的。<br /> 那么如何应对这种“迁移的变化”?如何既能利用现有对象的良好
2011-05-23 22:26:00 913
转载 原型模式(Prototype)
依赖关系倒置: <br /><br /> <br /><br />动机(Motivate):<br /> 在软件系统中,经常面临着“某些结构复杂的对象”的创建工作;由于需求的变化,这些对象经常面临着<br />剧烈的变化,但是它们却拥有比较稳定一致的接口。<br /> 如何应对这种变化?如何向“客户程序(使用这些对象的程序)"隔离出“这些易变对象”,从而使得“依赖这些易变对象的客户程序”不随着需求改变而改变?<br />意图(Intent):<br /> 用原型实例指
2011-05-21 23:42:00 914
转载 工厂方法模式(Factory Method)
耦合关系:动机(Motivation): 在软件系统中,由于需求的变化,"这个对象的具体实现"经常面临着剧烈的变化,但它却有比较稳定的接口。 如何应对这种变化呢?提供一种封装机制来隔离出"这个易变对象"的变化,从而保持系统中"其它依赖的对象"不随需求的变化而变化。意图(Intent): 定义一个用户创建对象的接口,让子类决定实例哪一个类。Factory Method使一个类的实例化延迟到子类。
2011-04-16 09:02:00 791
转载 建造者模式(Builder)
<br />Builder模式的缘起:<br /> 假设创建游戏中的一个房屋House设施,该房屋的构建由几部分组成,且各个部分富于变化。如果使用最直观的设计方法,每一个房屋部分的变化,都将导致房屋构建的重新修正.....<br /><br /><br />动机(Motivation):<br /> 在软件系统中,有时候面临一个"复杂对象"的创建工作,其通常由各个部分的子对象用一定算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合到一起的算法却相对稳定。<br
2011-04-08 00:10:00 754
转载 抽象工厂(Abstract Factory)
<br />常规的对象创建方法:<br />//创建一个Road对象<br />Road road =new Road();<br /><br />new 的问题:<br /> 实现依赖,不能应对“具体实例化类型”的变化。<br />解决思路:<br /> 封装变化点-----哪里变化,封装哪里<br /> 潜台词: 如果没有变化,当然不需要额外的封装!<br /><br />工厂模式的缘起<br /> 变化点在“对象创建”,因此就封装“对象创建”<b
2011-04-01 20:11:00 727
转载 创建型模式---单件模式(Singleton Pattern)
创建型模式---单件模式(Singleton Pattern)动机(Motivation): 在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。 如何绕过常规的构造器,提供一种机制来保证一个类只创建一个实例? 这应该是类设计者的责任,而不是类使用者的责任。结构图:意图: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 ------>GOF生活的例子:
2011-03-27 23:43:00 809
转载 深入理解C# 3.x的新特性(1): Anonymous Type
在C#2.0中,引入了一个新的Feature:Anonymous Method,允许我们已Inline的方式来定义Delegate,为Developer在Coding的时候带来了很大的便利。在C#3.0中,我们又有了另一个相似的Feature:Anonymous Type。Anonymous Type允许我们已Inline的方式的创建一个基于未知类型、具有所需数据结构的对象。 一、Anonymous Type Overview 在传统的编程模式中,对象依赖于一个既定的Type,我们只能在Type的基础上创
2011-03-26 11:57:00 3000
转载 《深入理解C# 3.x的新特性》博文系列汇总
较之C# 2.0, C# 3.x引入了一系列新的特性,为我们编程带来很大的便利,通过有效地利用这些新特性,我们可以编写出更加简洁、优雅的程序。不过这些新特性仅仅是编译器给我们耍的小花招:在编译的时候加入一些必要的Code,使这些在C# 2.0角度看略显“残缺”的Code变得“完整”,实际上最终生成的Assembly和在C# 2.0时代并没有本质的不同。为此,有些人对这些新特性不以为然,觉得仅仅是一些表面文章。但是我的观点是:既然这些特性能给我们带来便利,干嘛不用呢?本系列的着重点并不是放在如果去应用这些新特
2011-03-26 10:59:00 795
转载 我的WCF之旅(3):在WCF中实现双工通信
<br />双工(Duplex)模式的消息交换方式体现在消息交换过程中,参与的双方均可以向对方发送消息。基于双工MEP消息交换可以看成是多个基本模式下(比如请求-回复模式和单项模式)消息交换的组合。双工MEP又具有一些变体,比如典型的订阅-发布模式就可以看成是双工模式的一种表现形式。双工消息交换模式使服务端回调(Callback)客户端操作成为可能。<br /> <br />一、两种典型的双工MEP<br />1.请求过程中的回调<br />这是一种比较典型的双工消息交换模式的表现形式,客户端在进行服务调用
2011-03-06 00:41:00 831
转载 我的WCF之旅(2):Endpoint Overview
WCF实际上是构建了一个框架,这个框架实现了在互联系统中各个Application之间如何通信。使得Developers和Architect在构建分布式系统中,无需在考虑如何去实现通信相关的问题,更加关注与系统的业务逻辑本身。而在WCF Infrastructure中,各个Application之间的通信是由Endpoint来实现的。Endpoint的结构Endpoint包含以下4个对象:Address: Address通过一个URI唯一地标识一个Endpoint,并告诉潜在的WCF service的调用者
2011-02-24 22:58:00 941
转载 我的WCF之旅(1):创建一个简单的WCF程序
<br />为了使读者对基于WCF的编程模型有一个直观的映像,我将带领读者一步一步地创建一个完整的WCF应用。本应用功能虽然简单,但它涵盖了一个完整WCF应用的基本结构。对那些对WCF不是很了解的读者来说,这个例子将带领你正式进入WCF的世界。<br /> <br />在这个例子中,我们将实现一个简单的计算服务(CalculatorService),提供基本的加、减、乘、除的运算。和传统的分布式通信框架一样,WCF本质上提供一个跨进程、跨机器以及跨网络的服务调用。在本实例中,客户端和服务通过运行在相同的一台
2011-02-23 00:19:00 1176
转载 《我的WCF之旅》博文系列汇总
WCF是构建和运行互联系统的一系列技术的总称,它是建立在Web Service架构上的一个全新的通信平台。你可以把它看成是.NET平台上的新一代的Web Service。WCF为我们提供了安全、可靠的的消息通信,也为我们提供了更好的可互操作性,使得我们可以和其他的平台进行“交流”。 微软斥巨资打造WCF,在我们看来主要出于下面两个目的:实现其对现有的分布式技术的整合以及顺应SOA的浪潮。在WCF之前,微软已经为了提供了一套完整的基于分布式的技术和产品,这些技术和产品使我们构建一个基于于分布式的互联系统变得异
2011-02-22 23:53:00 1047
转载 WCF 一步一步从入门到精通 建立一个简单入门的例子(适合一点不会的朋友阅读)
Windows Communication Foundation (WCF) 是一个统一框架,用于创建既安全可靠又可交互的分布式事务处理应用程序。在我学习一样新的技术的时候总喜欢一开始就知道他如何使用和配置,然后再深入的了解的更多细节。下面我们就通过图片一步一步的从一点不会开始建立一个简单的WCF程序(这个例子取自微软,很简单):我使用的环境是: VSTS2008 sp11.建立一个名为WCF的空解决方案,再右键点击他,为这个解决方案添加一个“WCF 服务库”项目WCF服务库被添加进去,结果如下2.WCF项
2011-02-20 23:00:00 1076
转载 学习 WCF -- 基础篇
Windows Communication Foundation (WCF)是一个面向服务编程的综合分层架构。该架构的顶层称为服务模型层(Service Model Layer),使用户用最少的时间和经历建立自己的软件产品和外界通信的模型。它使得开发者能够建立一个跨平台的安全、可信赖、事务性的解决方案,且能与已有系统兼容协作。我将通过几篇文章和大家一起学习WCF,希望能对新手学习WCF有些帮助。从功能的角度来看,WCF 完全可以看作是ASMX,.Net Remoting,Enterprise Servi
2011-02-16 00:29:00 868
转载 ASP.NET发布网站解决方案
发布网站的时候有三个选项,很多人都不知道到底是怎么用的,简单说说:对于想了解发布网站那些选项的人来说这个文章是不错的,当然这个文章不是我写的。 第一个选项指定发布后是不是可以修改aspx文件,如果勾选,则发布后的网站行为基本与ASP.NET 1.1一致,只要没有增删修改控件,可以直接在服务器上修改aspx文件不用重新发布网站。 第二个选项指定是不是将每个aspx文件都编译成一个DLL文件,这样,就可以在修改了哪个aspx网页(包括aspx和cs文件),只需要更新一个DLL文件就行了,不用整站全部更新。1.允
2011-01-22 22:35:00 942
原创 The Connection String Reference 挺全面的数据库连接字符串
<br /> <br />偶然看到连接数据库的字符串,觉得概括得挺全面,故放到自己的博客里面,以备以后需要用到的时候查阅:<br /> <br />网址:http://www.connectionstrings.com/<br /> <br />纯英语的,如果找到中文的可以发来共享,让大伙一起提高,谢谢!
2011-01-22 12:09:00 809
转载 【More Effective C#】Partial Class是怎樣煉成的?
什么是部分类(Partial Class)?<br />C#中.我们可以利用部分类,将一个类分散到多个类文件中,这样我们就可以多个开发者同时开发某个类库,或者是扩展其他开发者发布的类库.甚至是代码生成器生成的代码,例如LINQ2SQL,ADO.NET EF等,以获取更高效的开发.<br />Re:Class和Class File的区别.这里的类是我们平时所说的普通类-Class,如抽象类,基类,子类等等.而类文件-Class File则是我们平时编写类时所用到的文件,如C#的.cs,VB的.vb.<br /
2011-01-22 10:18:00 902
转载 关于Generating user instances in SQL Server is disabled. Use sp_configure 'user instances enabled' to generate user instances的错误
<br />今天调试程序的时候出现:<br /><br /><br />“Generating user instances in SQL Server is disabled. Use sp_configure 'user instances enabled' to generate user instances"这个错误.<br /> <br />后来我发现你在sql Server中在该数据库中用这条<br /> <br /><br />exec sp_configure 'user instances
2011-01-19 00:03:00 1103
转载 单元测试基础知识
前言<br /> 本文是阅读了《单元测试之道》一书后的笔记,也是公司安排本人进行单元测试培训的材料,原文是一个Powerpoint,故修改了下,并针对Visual studio 2005自带的单元测试做的一个整理,将其奉献出来,目的是供需要了解和学习单元测试的朋友们阅读。如有错误望指出。什么是单元测试?<br />单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能把一个很
2011-01-15 02:57:00 782
转载 c#正则表达式收藏
-、"^"头匹配 ^front表示以"front"开头的字符串。二、"$"尾匹配 tail$表示以"tail"结尾的字符串。三、转义序列 所有转义序列都用"/"打头。如"^"、"$"、"+"、"("、")"在表达式中都有特殊意义,所以在正则表达式中也用"/^"、"/$"、"/+"、"/("、"/)"来表示。四、字符簇 [a-z]匹配小写字符;[A-Z]匹配写字符;[a-zA-Z]匹配所有字符;[0-9]匹配所有数字;[/./-/+]匹配所有句号,减号和加号;[^a-z]除了小写字母以外的成有字符;^
2010-12-25 01:17:00 742
转载 Hashtable, ArrayList, List, Dictionary学习
Hashtable用法在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以Hashtable可以支持任何类型的key/value键值对。在哈希表中添加一个key/value键值对:HashtableObject.Add(key,value);
2010-12-13 22:28:00 822
转载 在Asp.Net MVC中使用ModelBinding构造Array、List、Collection以及Dictionary
在asp.net mvc中,我们可以在html表单中使用特定的格式传递参数,从而通过model binder构造一些集合类型。第一种方式:比如这样一个方法public ActionResult Infancy(Person[] people){ // ... } 并在表单中添加这些input元素
2010-12-12 14:35:00 2372
转载 Asp.Net MVC中的RenderPartial 和 RenderAction
在Asp.Net MVC中要实现某个功能可以通过许多种方式,今天我们就来讨论下使用RenderPartial和RenderAction在视图中呈现部分内容之间的区别。比如我们要呈现如下的图所示的内容:一般的情况下,我们可能需要在母板页中呈现此内容以保证该内容可以在每个使用该模板的视图中显示,并且这些内容需要结合具体的业务逻辑。上图所示的内容,我们是在用户控件中生成的,这样做便于该内容与母板页或者具体的视图相分离。我们至少有两种方式来呈现这些内容。这里我们只讨论通过RenderPartial和RenerAct
2010-12-12 14:09:00 2907
转载 JQuery快速学习方法总结
<br />JQuery是什么?VS2010已经集成进去这个东西,从应用上看,未来Web的开发,基本上它应该成为事个默认的事实标准。<br /> <br />JQuery实际上是JavaScript开发的一个Web客户端框架。而且是一个很有钱途的框架。一说到框架,程序员的脑子里很可能立即就浮现出“庞大,复杂,笨重,难懂”等等词汇。本人一开始,也是对号称“框架”的东西有一定的抵触和畏惧心里,比如MS那庞大的.net FrameWork或者MFC。<br /> <br />但是,JQuery经过简单的了解后,才
2010-12-12 00:27:00 951
转载 深入学习.NET Web Services概念
介绍 在学完Web Service的课程后,我深深地被它的内容所吸引了,这使得我想在这方面做个总结,本篇文章是介绍.NET下的Web Service的概念的,在写作期间笔者也参考了很多优秀的文章,相信对于巩固该方面的基础知识是十分有帮助的。技术纵览 Web Service是一种可以通过标准Internet协议访问的可编程的应用逻辑。Web Service将基于组件的开发理念和web进行了合并。之所以说以组件为基础的理念,是因为Web Service对于用户而言只是一个黑盒,它可以
2010-12-01 23:00:00 959
转载 面向对象编程(Object Oriented Programming)概念及延伸(三)
昨天我发布了该系列文章的第二部分,今天我将做第三部分的总结,这也是该系列的最后一个部分,希望能写的更有质量些。3.17 什么是多态(Polymorphisms)? 多态是个专用的术语,它的意思是‘很多样子’(many shapes)。更精确的将,多态是种能力,通过这种能力相同的操作可以广泛地应用于不同类型的事物。 在OOP中,多态是通过很多不同技术实现的,它们分别是方法重载(method overloading)、运算符重载(operator overloading)以及方
2010-12-01 00:16:00 1163
转载 面向对象编程(Object Oriented Programming)概念及延伸(二)
之前我编写了该文章的第一部分,今天接着写第二部分,希望大家能继续支持。3.10 什么是抽象(Abstraction)和泛化(Generalization)? 抽象强调的其实是一种思想和概念,而不依赖于实现的细节。抽象最重要的功能是,可以通过抽象名字去引用对象从而达到隐藏对象中不相关细节的目的。抽象对于建立程序是十分重要的,它说明了一个对象是什么,这个对象能做些什么,而不是解释了这个对象怎么实现了这些内容的,即抽象隐藏了对象实现的具体细节,是对象的代表和说明,因此抽象是管理大型程序复杂性
2010-11-30 21:45:00 779
转载 面向对象编程(Object Oriented Programming)概念总结及延伸(一)
1.介绍 笔者的梦想是成为一个架构师,但是要成为一个合格的架构师是相当不易的,它既需要丰富的项目经验也需要不断地吸取新的知识,而且在这过程中我们也要不断巩固基础知识。我也注意到了,现在主流的文章大都集中到了新技术新的框架的学习,大家对于最新的技术都怀有无比好奇的学习态度,这点是好的,可是只是一味站在高层学习而忽略了最本质的知识,这是不好的,所以笔者在吸取了很多教训之后决定写此篇文章总结自己对面向对象知识的学习。 另外,需要提出的一点是,现在的开发大多基于框架或者现有类库,因为开发人员要在很短的时
2010-11-29 23:35:00 1195
转载 .net下邮件发送代码
下文中的代码是.Net(C#语言)写的发送邮件的代码,此代码只是简单的示范怎么用.Net代码来实现邮件的发送功能。代码如下:
2010-11-29 22:57:00 747
转载 jQuery中的事件总结
<br />1.$(document).ready()<br /><br />$(document).ready()是jQuery中响应JavaScript内置的onload事件并执行任务的一种典型方式。它和onload具有类似的效果。但是也有一些差异:<br /> 当一个文档完全下载到浏览器中时,会触发window.onload事件。而使用$(document).ready()注册的事件处理程序会在html下载完成并解析为Dom树之后,代码就可以运行,但并不意味着所有关联文件都已经下载完毕。一个页面中一
2010-11-28 23:42:00 669
转载 ASP.NET MVC2中返回Json异常的解决办法
在ASP.NET MVC1.0中,我们在前段通常会这样做。 $.ajax({ type: "GET", url: "/role/SaveRoleResource", data: { roleId: roleId, array: item }, datatype: 'json', success: f
2010-11-28 23:18:00 1126
转载 ASP.NET 3.5路由总结篇
URL Routing是非常重要的一块技术体系,笔者将URL Routing的知识进行梳理后得出本文,旨在同大家分享,希望能够起到抛砖引玉的作用。1. 什么是URL Routing?所谓URL Routing(URL路由),指的是在Web中,URL不再是文件目录中的一个文件,而是一个说明有关URL路由的字符串,开发者可以自定义该字符串的格式。2. 为什么要使用URL Routing?主要目的:URL更加的友好,方便web使用者理解相关页面的功能。至于其它目的嘛,这个就太广了,甚至可以在使用中慢慢
2010-11-28 23:03:00 1088
转载 每隔20秒自动绑定事件livequery
jquery的一个插件livequery,它每隔20毫秒会对DOM里的元素重新来一次事件绑定,感觉没什么用是吧?举个例子,比如拖拽,DOM加载的时候就加载的模块会有拖拽效果,之后加载的是没有这个效果的,你要再给他手动绑定一次事件才可以,用这个插件就不用绑了,自动完成。$(“.ajaxa”).livequery(‘click’,function(){$(this).css(“background-color”,”red”);});还是很简单是吧。对这种定时执行的 东西有一定的疑虑,是不是太耗资源了,手动绑定下
2010-11-27 00:52:00 745
转载 jQuery Live Query 插件
上篇日志里写到的那个问题其实有种更简单的解决办法,就是使用jquery的Live Query 插件,网上有些该插件的使用方法,它每隔20毫秒会对DOM里的元素重新来一次事件绑定,老早就知道它,但是一直不知道具体用法,前几天解决的问题的时候也用过live query,但是没弄出来。。汗一个。。。今天上网继续搜索,终于在一个网站:http://brandonaaron.net/docs/livequery/里找到了它另一种用法,成功的解决了问题。使用方法1(这种方法测试没通过):$('a')
2010-11-26 23:56:00 848
转载 jquery:DOM更改后重新绑定事件的问题
这两天做一个管理系统页面的时候遇到一个问题,有的时候需要动态把一个元素复制几个出来,例如添加联系地址,有的时候有几个地址,那么可以动态的添加、删除地址个数。 做添加的功能并不复杂,只需要在添加按钮上绑定事件就可以了,但是做删除的时候就让我折腾了好久,除非把删除的功能代码写在HTML里,否则如果用JQ做的事件绑定就会失效,想想也是,JQ绑定的时候DOM里并没有这个元素,所以之后生成出来的元素并不能绑定上。 折腾N久无结果后,今天向高手求助,得到一段JQ的代码:$(function(){
2010-11-26 23:51:00 1344
转载 简单的SQL语句学习资料 经典SQL语句
简单的SQL语句学习资料 经典SQL语句 为了大家更容易理解我举出的SQL语句,本文假定已经建立了一个学生成绩管理数据库,全文均以学生成绩的管理为例来描述。 1.在查询结果中显示列名: a.用as关键字:select name as '姓名' from students order by age b.直接表示:select name '姓名' from students order by age 2.精确查找: a.用in限定范围:select * from students where
2010-11-23 23:53:00 692
转载 总结一下,在MVC下利用JQUERY实现AJAX提交,并实现AJAX .NET的UpdateProgress功能
在MVC下我们不能利用AJAX.NET控件,那么要实现UpdateProgress来显示进度怎么办,我们可以利用JQUERY来实现这个功能。顺便说一句JQuery将集成在下一版本的Visual Studio中,是MS AJAX FrameWork的一部分。1.接着上一篇的 XML Menu,我们先编辑Menu.XML,添加如下代码: <MenuItemOrder="4"Action="Test"Controller="AJAXFORM"> AJAXFORM </MenuItem>2
2010-11-21 23:26:00 990
转载 用JQuery异步加载PartialView
需求:页面上有dropdown之类的控件,当选择里面不同值的时候,下面关联的内容跟着改变。思路:把与 dropdown关联的会改变的内容放到PartialView(ascx)里,用JQuery绑定dropdown的change事件,当选择值改变时,用JQuery ajax请求与PartialView相关的Action,得到数据后讲取到的内容覆盖原来的内容。实现:Model 类:代码public class User { public string UserName { get; set;
2010-11-21 21:06:00 1482
转载 详解ASP.NET MVC使用Chart控件调用示例
在 .NET 3.5 的时候,微软就提供了一个 Chart 控件,网络上有大量的关于在 VS2008 中使用这个控件的文章,在 VS2010 中,这个控件已经被集成到 ASP.NET 4.0 中,可以从工具箱中直接使用了。本文章将从ASP.NET MVC使用Chart控件调用示例,敬请大家留意。
2010-11-18 23:43:00 2126
AjaxForm_JqueryUI例子
2012-01-08
AjaxForm_JqueryUI.rar
2012-01-08
asp.net mvc ajax 例子
2010-10-07
Movies实例源代码
2010-09-13
jakarta-taglibs-standard-current.zip
2009-03-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人