自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

转载 打造属于自己的代码管理器之需求分析篇

首先申明:我说的代码管理器不是版本管理器,也不是普通的资料管理器。背景:因为工作和学习的需要,我从网上下载了很多代码,但是代码越多,管理这些代码就越麻烦。问题主要有以下几点:1、工作中急需的一些代码我以前写过或是我几个月前曾经下载过,但是一时就是找不到。2、从网上下载需要的代码相当费时间,而且很难找到合适的。特别是做winform界面时,那些具有特定效果的控件的代码相当难...

2008-06-01 21:02:00 57

转载 《Head.First设计模式》的学习笔记(9)--外观模式

意图:为子系统中的一组接口提供一个一致的界面,Facade 模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 结构: 例子: 假设你有一套杀手级的家庭影院系统,内含DVD播放器、投影仪、自动屏幕、环绕立体声等。那么当你想看一部DVD时,需要做哪些事情呢(用最土的方式)? 1、将灯光调暗; 2、放下屏幕; 3、打开投影仪; 4、将投影仪的输入切换到DVD; 5、将投影仪设置...

2008-05-16 15:18:00 70

转载 《Head.First设计模式》的学习笔记(8)--适配器模式

软件开发中经常遇到的问题:假设已有一个软件系统,你希望它能和一个新的厂商类库搭配使用,但是这个新厂商所设计出来的接口,不同于旧厂商的接口。如果你不想改变现有的代码,也不能改变厂商的代码,那么你该如何解决这个问题。方法其实很简单,就是写一个类,将新厂商的的接口转成你所期望的接口。如图 这就是适配器模式。意图:将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使...

2008-05-07 22:17:00 104

转载 《Head.First设计模式》的学习笔记(7)--命令模式

背景:有时候我们需要对方法进行封装,通过对这些封装的方法进行调用,我们可以很好的处理一些事情。比如,记录日志,或者重复使用这些封装实现撤销功能。意图:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。结构: 例子:这次我们将设计一个家电自动化遥控器的API需求分析:遥控器的图: 1)、遥控器上具有...

2008-05-04 23:21:00 54

转载 从Excel中导数据到DataGridView

最近项目中需要从Excel中导数据到DataGridView中,所以写了一个通用类,代码如下:1publicclassExcelToDatableHelper2{3privatestaticExcelToDatableHelperinstance=null;4privatestaticObjectlo...

2008-04-28 10:12:00 60

转载 SQL语句优化技术分析

最近几周一直在进行数据库培训,老师精湛的技术和生动的讲解使我受益匪浅。为了让更多的新手受益,我抽空把SQL语句优化部分进行了整理,希望大家一起进步。 一、操作符优化 1、IN 操作符 用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格。但是用IN的SQL性能总是比较低的,从Oracle执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试...

2008-04-27 22:24:00 64

转载 《Head.First设计模式》的学习笔记(6)--单件模式

背景:有一些对象其实我们只需要一个,比方说:线程池(threadpool)、缓存(cache)、对话框、处理偏好设置和注册表(registry)的对象、日志对象,充当打印机、显卡等设备的驱动程序的对象。事实上,这类对象只能有一个实例,如果制造出多个实例,就会导致许多问题产生,例如:程序的行为异常、资源使用过量,或者是不一致的结果。因此,我们设计这种类时必须确保只有一个实例,单件模式应...

2008-04-15 16:30:00 71

转载 《Head.First设计模式》的学习笔记(5)--工厂方法模式

意图:定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method 使一个类的实例化延迟到其子类。结构: 实例:下面我们以Pizza店的例子来谈谈“工厂方法模式”的来龙去脉,我们学习的思路是“原始设计-->简单工厂-->工厂方法”。情景分析:假如你有一个Pizza店,那么你的Pizza订单可能会写成如下代码(这段代码写在PizzaStor...

2008-04-09 08:29:00 97

转载 《Head.First设计模式》的学习笔记(4)--装饰者模式

意图:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。结构: 例子:下面我们以星巴兹(Starbuzz)的订单系统为例加以说明。需求分析:1)、星巴兹的饮料(Beverage)种类繁多,主要有HouseBlend、DarkRoast、Decaf、Espresso。2)、星巴兹的调料很多,主要有Steamed Milk、Soy、Mo...

2008-03-31 08:31:00 56

转载 《Head.First设计模式》的学习笔记(3)--观察者模式

意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新。结构: 例子:下面以模拟气象站系统来加以说明。需求分析:该系统的需求如下:1、气象站能够追踪目前的天气状况,包括温度、湿度、气压、2、气象站能够提供三种布告板,分别显示目前天气状况、气象统计和简单的预报。3、布告板上的数据必须实时更新。4...

2008-03-24 15:22:00 64

转载 《Head.First设计模式》的学习笔记(2)--策略模式

先对策略模式有一个总体认识。意图:定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。结构: 下面通过鸭子模拟器的设计来具体介绍。公司需要设计一套鸭子模拟器系统,该系统的第一次需求为:鸭子能够戏水;鸭子能够呱呱叫。根据该需求系统设计如下: 这个设计主要用了父类鸭子和子类绿头鸭、红头鸭,这样设计的目的是为了达...

2008-03-21 00:12:00 105

转载 《Head.First设计模式》的学习笔记(1)

书中列举了一些让大脑就范的原则,其实这也是我们在学习中应该遵循的原则。这些原则如下:1、慢一点,你理解的越多,需要记的就越少。2、勤做练习,自己记笔记。3、上床睡觉之前不要再看别的书了,或者至少不再看其他有难度的东西。4、要喝水,而且要多喝点水。5、大声说出来。6、听听你的大脑怎么说。7、要有点感觉!8、设计一点东西!书中列举的设计原则:1、封装变...

2008-03-19 14:38:00 43

转载 变相实现DataGridView中既有文本框又有按钮的列

最近开发中有这样一个需求:希望DataGridView中有这样一个模板列,该列类似与ComboBox列(既有文本框又有按钮),但功能需求比他更强大。具体需求如下:1、点击Button,可以弹出窗口,不一定是下拉框。2、Button可以对相关的文本框的编辑状态等进行控制。3、Button必须点击一下就有反应。ComboBox列中的按钮需要点击两下,第一下选种文本...

2008-03-17 12:26:00 263

转载 Basic Windbg - 2 CLR基础 (转)

原文地址:http://www.cnblogs.com/juqiang/archive/2008/03/04/1090628.htmlBasic Windbg - 2 CLR基础 调整一下写的思路,第一部分的sos basics继续有效,原定的crash/hang/memory等,序号顺延,中间插入这个clr basics创建一个控制台程序,代码如下:Code...

2008-03-12 17:17:00 37

转载 Basic Windbg - 1. SOSBasics(总结)(转)

原文地址:http://www.cnblogs.com/juqiang/archive/2008/01/02/1023291.htmlBasic Windbg - 1. SOSBasics(总结) 我们都知道,对于字符串相加,建议使用StringBuilder,而不是普通的string concat,为什么呢?我们通过dump简单看一下。先看这个代码:Code...

2008-03-11 17:18:00 49

转载 Basic Windbg - 1. SOSBasics(再续)(转)

原文地址:http://www.cnblogs.com/juqiang/archive/2008/01/02/1023236.htmlBasic Windbg - 1. SOSBasics(再续) 我们的查看对象之旅,还远没有结束。继续按照前前一篇的代码来扒皮。上节讲的是通过!dso,找到所有stack上的东西,下面我们看heap上的东西。首先,整体上先来了解一下。...

2008-03-11 17:15:00 48

转载 Basic Windbg - 1. SOSBasics(续)(转)

Basic Windbg - 1. SOSBasics(续) 原文地址:http://www.cnblogs.com/juqiang/archive/2008/01/02/1023167.html书接上回,我们开始看另外几个命令。大家如果注意看我的代码,能发现里面既有value type,也有reference type。那么,我怎么查看,当前线程状态下,我的那些变量...

2008-03-11 17:10:00 52

转载 Basic Windbg - 1. SOSBasics(转)

原文地址:http://www.cnblogs.com/juqiang/archive/2008/01/02/1023095.htmlBasic Windbg - 1. SOSBasics 看代码先。这是一个控制台程序,通过这个程序,我们来初步接触一下windbg如何使用。(代码你可以自己创建一个console application,然后把我下面代码全部覆盖上去即可,用...

2008-03-11 17:05:00 60

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除