自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (50)
  • 收藏
  • 关注

原创 建造者模式(Builder)

建造者模式(Builder):将一个复杂对象的构建与他的表示分离,使得同样的构造过程可以创建不同的表示。     建造者模式的好处是使得建造代码与表示代码分离,由于建造者隐藏了该产品如何组装的,所以若需要改变一个产品的内部表示,只需要定义一个具体的建造者即可。     建造者模式适用于:当创建复杂对象的算法应该独立于该对象的组成部分以及他们的装配方式

2009-03-26 15:03:00 386

原创 外观模式(Facade)

外观模式(Facade):为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。   外观模式使用:首先,在设计初期阶段,应该要有意识的将不同的两个层分离;其次,在开发阶段,子系统往往因为不断的重构演化而变得越来越复杂,增加外观模式可以提供一个简单的接口,减少他们之间的依赖;第三,在维护遗留大系统时,可以增加一个Facade类。

2009-03-26 10:04:00 421

原创 迪米特法则(LoD)-最少知识原则

迪米特法则(LoD)-最少知识原则:如果两个类不必彼此直接通信吗,那么这两个类就不应当发生直接的互相作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三个转发这个调用。   在结构设计上,每一个类都应当尽量降低成员的访问权限。其基本思想,是强度了类之间的松耦合。类之间的耦合越弱,越有利于复用,一个处在弱耦合的类被修改,不会对有关系的类造成波及。

2009-03-26 09:40:00 1069

原创 模板方法模式

模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。   模板方法模式是通过把不变行为搬移到超类,去除子类中的重复代码来体系他的优势。

2009-03-25 10:44:00 332

原创 原型模式(Prototype)

原型模式(Prototype):用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。   原型就是从一个对象再创建另外一个可定制的对象,而不需要知道任何创建的细节。  一般在初始化的信息不发生变化的情况下,克隆是最好的方法。这既隐藏了细节,又大大提高了性能。

2009-03-24 17:39:00 400

原创 工厂方法模式(Factory Method)

<!-- document.domain="qq.com"; //parent.qZEditor.callback(); function init(){ var key = location.hash.substr(1); document.editorID = key; parent.editorHash[key

2009-03-24 17:33:00 413

原创 代理模式(Proxy)

代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问。  远程代理:为一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。  虚拟代理:根据需要创建开销很大的对象,通过他来存放实例化需要很长时间的真实对象。  安全代理:用来控制真实对象访问时的权限。  智能代理:当调用真实的对象时,代理处理另外一些事。 

2009-03-24 17:18:00 337

原创 装饰模式(Decorator)

<!-- document.domain="qq.com"; //parent.qZEditor.callback(); function init(){ var key = location.hash.substr(1); document.editorID = key; parent.editorHash[key

2009-03-24 16:52:00 464

原创 依赖倒转原则(针对接口编程,而非实现编程)

<!-- document.domain="qq.com"; //parent.qZEditor.callback(); function init(){ var key = location.hash.substr(1); document.editorID = key; parent.editorHash[key

2009-03-24 14:18:00 791

原创 开放-封闭原则

开放-封闭原则:软件实体(类、模板、函数等)应该可以扩展,但不可以修改。即,对于扩展是开放的(Open for extension);对于更改是封闭的(Closed for modification)。  无论模块是多么的“封闭”,都会存在一些无法对之封闭的变化。既然不可能完全封闭,设计人员必须对于他设计的模块应该对于那种变化封闭做出选择。  开放-封闭原则是面向对象设计的核心

2009-03-24 13:56:00 568

原创 单一职责原则(SRP)

单一职责原则(SRP):就一个类而言,应该仅有一个引起他变化的原因。  如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。  软件设计真正要做的许多内容,就是发现职责并把这些职责互相分离。如果你能够想到多余一个的动机去改变一个类,那么这个类就具有多余一个的职责

2009-03-24 13:39:00 432

原创 扩展CListCtrl及需要注意的问题

// 有时,我们需要扩展CListCtrl已添加我们的功能,如排序,追加信息等等。为了实现排序,我们需要把列信息添加到ItemData中,这是,我们在删除列时,就需要先删除我们的信息,以避免内存丢失。同时注意,为了保证退出时,销毁信息,我们要重载OnDestroy函数,在里面释放我们的消息(不能在析构函数中完成,因为那是,列已删除)class CXReportList : public CList

2009-03-20 13:55:00 816

原创 vector中元素的查找(find_if)与复制(copy)

查找:  在Vector中查找元素,可以通过find_if快速实现,但是需要先定义算子  class CIDCompare : unary_function  {  public:    CIDCompare(DWORD dwUserID_)    {      m_dwUserID = dwUserID_;    }    bool operator()(const TINFOVECTOR::v

2009-03-20 13:37:00 1683

原创 在列表控件中显示文件图标与类型

初始化列表    SHFILEINFO rInfo;    HIMAGELIST hImglist;    hImglist = (HIMAGELIST) SHGetFileInfo ( L"", 0, &rInfo, sizeof(SHFILEINFO),         SHGFI_ICON | SHGFI_SMALLICON |         SHGFI_SYSICONINDEX );  

2009-03-20 11:08:00 1244

原创 树形控件设定图标以及“双击”与“单击时选中”处理

设定图标与属性:    TreeInit(UINT nBitmapID_, int nDimension_, int nInit_, int nSeled_)    {    CBitmap    cBit;    cBit.LoadBitmap(nBitmapID_);    m_cImages.Create(nDimension_, nDimension_, ILC_COLORDDB, nIn

2009-03-20 10:41:00 2859 1

原创 工具条添加图标与变灰(禁用)

    if (!m_wndToolBar.CreateEx(        this,        TBSTYLE_FLAT,        WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_GRIPPER|CBRS_TOOLTIPS|CBRS_FLYBY|CBRS_SIZE_DYNAMIC|CBRS_BORDER_TOP) || !m_wndToolBar.LoadTool

2009-03-12 15:29:00 1616

原创 VC中屏蔽F1

用VC开发的程序,按F1时,总是弹出查找.hlp文件,即使在PreTranslateMessage()中把VK_F1屏蔽也无效,非常烦人。  其实只要重载一下afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo) (对应主程序中消息WM_HELPINFO),然后就可以添加我们自己的处理流程了。

2009-03-04 16:24:00 2279 1

SQL语言艺术.pdf

例子大多来自于实际案例,对九种SQL经典查询场景以及其性能影响讨论,非常便于实践,为你的实际工作提出了具体建议

2010-03-16

More Effective C Sharp

More Effective C#: 50 Specific Ways to Improve Your C# By Bill Wagner

2010-03-13

Effective C Sharp

Effective C#: 50 Specific Ways to Improve Your C#

2010-03-13

Windows驱动程序编写者指南.pdf

本书包括:驱动程序编写者指南;设置、即插即用和电源管理;内核模式驱动程序;内核流驱动程序;图形驱动程序;网络驱动程序。比较全面的学习WDM驱动的书籍

2010-02-11

WMI技术指南.pdf

W技术指南:为pdf格式的,方便阅读。主要介绍了Win脚本编制基础、wmi基础只是、wmi脚本编制方法、利用wmi脚本管理windows环境等

2009-11-17

计算机编程艺术卷4(英文).pdf

计算机编程艺术卷4(英文).pdf;2005版

2009-10-30

计算机编程艺术卷3.pdf

计算机编程艺术卷3.pdf(中文版),主要是排序和查找相关的内容

2009-10-30

计算机编程艺术卷2(第三版).pdf

计算机编程艺术卷2(第三版)(中文)。主要讲了随机数和算术相关知识

2009-10-29

计算机编程艺术卷1(第三版).pdf

计算机编程艺术卷第三版第一卷(中文);主要讲了数学基础和一些基本的结构

2009-10-29

Beginning C#2005 Database

学习使用C#操作数据不错的资料,中文版翻译成了《C#数据库入门经典》可见一般。为第三版,其对应的是C#2005,和sql2005

2009-08-17

ADO.Net完全攻略.pdf

pdf格式的,网上找的资料。 不是代码,大家放心

2009-07-23

使用批处理自动安装补丁程序

使用批处理自动安装补丁程序 因补丁程序太大,所以压缩文件中只有一个补丁程序实例。在使用前,请先把补丁程序放到相应的目录下即可。

2008-09-27

Get Error Message

自己写的一个根据Windows错误号获取错误信息的小程序。

2008-06-02

《中文版Project 2003实用教程》课件

《中文版Project 2003实用教程》课件

2008-05-06

Programming the Windows driver mode中文版

本书为Programming the Windows driver mode的中文版,对于想学习Windows驱动编程者,很有帮助

2008-04-24

C语言函数大全(着色版)

chm格式的c语言函数大全,根据字母顺序,可以方便的查找需要的函数,同时每个函数还有实例程序。<br>内容都是着色的,阅读时,就如同使用VC时用VC助手一样,阅读非常方便。

2008-03-05

IPv6技术白皮书(文档)

对IPv6的产生,发展,技术特点,应用以及从IPv4的IPv6的过度做了较详细的介绍。

2008-03-04

Matlab的神经网络工具箱实用指南

Matlab的神经网络工具箱实用指南

2008-03-04

Matlab与VC混合编程

Matlab与VC混合编程

2008-03-04

FAT file system specification中文版

对FAT12,16,32文件系统进行简要的介绍介绍。本文为微软《hardware white paper》FAT file system specification部分的翻译。

2008-03-04

poinitofix屏幕白板+多语言配置

poinitofix屏幕白板可方便地把当前屏幕作为白板进行涂画,方便在线教学

2023-05-21

Autopublish(puttys).zip

使用putty工具包中的plink与pscp,通过脚本(Windows下)自动发布程序(服务)文件到Linux服务器上。 包括4个脚本(两个sh与两个bat)和plink与pscp等工具程序

2019-09-01

WinStartTime获取Windows开机时间

可获取Windows的启动时间、已运行时间,以及具体的操作系统信息;需要.net2支持

2013-11-21

PreventSleep-禁止休眠与关闭显示器

可禁止Windows休眠以及立即关闭显示器;需要.net2支持

2013-11-21

SwapMouse鼠标左右键自动切换

鼠标左右键自动切换,每运行一次就自动切换一次鼠标左右键。需要.net2支持。

2013-11-21

WCF4高级编程

《WCF 4高级编程》详细介绍了WCF 4的各种技术,并通过3个案例介绍这些技术的应用。只有其中的1、4、7、10、13五章(把原来50M的压缩后得到)

2012-08-14

BAT批处理与DOS命令总结

批处理文件有时可以提高我们的工作效率 ,文档中对批处理常用语法与常用dos命令做了总结

2011-07-08

LINQ中文教程.doc

介绍linq,to sql以及to xml的入门教程

2011-06-17

Word2003快捷键.doc

通过快捷键可以提高我们的工作效率,Word2003快捷键.doc

2010-12-08

MathType快捷键与技巧.doc

通过快捷键,可以提高效率。 MathType快捷键与技巧总结

2010-12-06

重构----改善既有代码的设计

软件工程领域的超级经典巨著,与另一巨著《设计模式》并称"软工双雄",全美销量超过100000册,亚马逊书店五星书。 在本书中,作者Martin Fowler充分展示了何处可能需要重构,以及如何将不好的设计改造为良好的设计。

2010-11-15

pdf与文本文档字数统计

可以对pdf(文本性质的,不能是图片的)与文本文档进行字数、单词、符号等信息进行统计

2010-11-03

[美]诺曼:设计心理学.pdf

设计必须反映产品的核心功能、工作原理、可能的操作方法和反馈产品在某一特定时刻的状态。设计实际是一个交流过程,设计人员必须深入了解其交流对象。

2010-08-26

(极限编程)测试驱动开发.pdf

敏捷大师之Kent Beck之作,测试驱动开发.pdf

2010-08-05

解析极限编程:拥抱变化.pdf

敏捷大师之Kent Beck之作。解析极限编程:拥抱变化,完整版。

2010-08-05

LaTeX排版教程(第三版)

LaTeX排版教程,为吴聪敏、吴聪慧翻译的,第三版,只可惜是繁体中文的,有需要的就凑合着看吧

2010-07-16

Latex2介绍.pdf

Latex2介绍:一份不太简短的latex2教程或82分钟学会latex2

2010-07-16

OleView-COM组件查看器

ole/com object viewer组件查看器,版本为5.1。包括查看器oleview.exe和接口库IVIEWERS.DLL

2010-05-09

Sql 2005系统表详细说明.doc

Sql 2005系统表详细说明:对2005中的各种系统表的结构进行说明

2010-03-18

空空如也

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

TA关注的人

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