随笔分类 -  c#

明辨接口实现和虚函数重载的区别
摘要:转自:http://www.cnblogs.com/wucountry/archive/2007/03/10/670491.html谢谢 Wu.Country@侠缘 的翻译Effective C# 原则20:明辨接口实现和虚函数重载的区别Item 20: Distinguish Between Implementing Interfaces and Overriding Virtual Funct... 阅读全文

posted @ 2008-07-16 18:31 tony.zjb 阅读(621) 评论(0) 推荐(0)

阅读代码
摘要:相信大家都阅读过许多大虾,小虾的代码.因为程序有bug,今天看别人的代码,总觉的代码写发上有一些问题,看着看着也觉得这样做也没有错.很容易走入了对方的思维方式,错误的也觉得对了,有的时候恨不得重写别人的代码,可能我自己写的时候比起我看别人的代码找bug花费的时间还要少.艾,自己认同了别人的做法,你也没有去重新别人代码的勇气,因为思维已经定下来了. 看代码真是吃力活. 阅读全文

posted @ 2008-06-30 12:21 tony.zjb 阅读(581) 评论(2) 推荐(0)

异步
摘要:一).描述 先运行个简单的线程示例,认识一下线程 通过委托调用方法,以及使用AsyncResult判断线程的状态 (二).代码 using System; using System.Threading; using System.Runtime.Remoting.Messaging; namespace 通过委托异步调用方法 { //委托声明(函数签名) delegate strin... 阅读全文

posted @ 2008-05-28 00:10 tony.zjb 阅读(271) 评论(0) 推荐(0)

remoting
摘要:1、Remoting支持两种远程对象:知名的和客户激活的。知名的远程对象使用了uri作为标识,客户程序使用这个uri来访问那些远程对象,也正式为 什么称作知名的原因。对知名的对象来说2种使用模式:SingleCall和Singleton,对于前者每次调用都会新建对象,因此对象是无状态的。对 于后者,对象只被创建一次,所有客户共享对象状态,因此对象是有状态的。另外一种客户端激活对象使用类的类型来激活... 阅读全文

posted @ 2008-05-22 17:43 tony.zjb 阅读(211) 评论(0) 推荐(0)

vfpConn
摘要:ODBC Standard Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=c:\mydbpath; Remote drives Driver={Microsoft dBase Driver (*.dbf)};datasource=dBase Files; OLE DB, OleDbConnection ... 阅读全文

posted @ 2007-10-19 09:22 tony.zjb 阅读(473) 评论(0) 推荐(0)

委托、事件、自定义事件(转载)
摘要:转载自:http://www.pianshu.net/blog/article.asp?id=207一、委托委托类似于函数指针,但函数指针只能引用静态方法,而委托既能引用静态方法,也能引用实例方法。委托使用分三步:1、委托声明。2、委托实例化。3、委托调用。例程一: 程序代码 using System;namespace 委托{ delegate int NumOpe(int a,int... 阅读全文

posted @ 2007-05-08 00:24 tony.zjb 阅读(458) 评论(0) 推荐(0)

c# 委托
摘要://委托是函数的封装//为什么要使用委托。//1:更加灵活的方法调用//2: 用于异步回调//3: 多线程变成中使用委托来制定启动一个线程时调用的方法.//4: c#中的事件模型.用他们指明处理给定事件的方法.public delegate void Del(string message);public void DelegateMethod(string message){System.Cons... 阅读全文

posted @ 2007-05-06 23:27 tony.zjb 阅读(404) 评论(0) 推荐(0)

chain of responsibilit职责链模式
摘要:动机:在软件构建过程中,一个请求可能被多个对象处理,但是每个请求在运行时只能有一个接收者,如果显示指定,将必不可少地带来请求发送者和接收者的深耦合.意图:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系.将这些对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止.chain of responsibility 模式的应用场合在于“一个请求可能有多个接收者,但是最后真... 阅读全文

posted @ 2007-04-25 00:40 tony.zjb 阅读(598) 评论(2) 推荐(0)

TemplateMethod模板方法(行为型模式)
摘要:变化--是软件设计的永恒主题,如何管理变化带来的复杂性?设计模式的艺术性和复杂度就在于如何分析,并发现系统中的变化点和稳定点,并使用特定的设计方法来应对这种变化。动机: 在软件构建的过程中,对于某一项任务,它常常有稳定的整体操作结构,但各个子步骤却有很多改变的需求,或者由于固有的原因(比如框架与应用之间的关系)而无法和任务的整体结构同时实现。 如何在确定稳定操作结构的前提下,来灵活应对各个子步... 阅读全文

posted @ 2007-04-24 20:59 tony.zjb 阅读(234) 评论(0) 推荐(0)

Abstract Factory抽象工厂(创建型模式)
摘要:new的问题----new实现依赖,不能应对具体实例化类型的变化面向接口编成-----依赖借口,而非依赖实现 动机: 在软件系统中,经常面临着“一系列相互依赖的对象”的创建工作;同时,由于需求的变化,往往存在更多系列对象的创建工作。 如何应对这种变化?如何绕过常规的对象创建方法(new),提供一种“封装机制”来避免客房程序和这种“多系列具体对象创建工作”的支耦合?意图: 提供一个接口,让该接... 阅读全文

posted @ 2007-04-17 22:32 tony.zjb 阅读(300) 评论(0) 推荐(0)

singleTon 模式
摘要:类与类之间是组合关系更好,这样的类与类之间是低耦合,而继承是属于高耦合的关系。通过OO隔离变化动机:在soft,有这样的类,必须保证他们在系统之中只有一个实例,才能确保他们的逻辑正确性,以及更好的效率,如果通过常规的构造器,提供一种机制来保证一个类只有一个实例。意图:保证一个类只有一个实例 ,并提供一个该实例的全局访问点。要点:singleton中的实例构造器可以设置为protector以允许子类... 阅读全文

posted @ 2007-04-15 20:05 tony.zjb 阅读(243) 评论(0) 推荐(0)

Decorator 装饰模式
摘要:子类复子类,子类何其多动机: 解决了过度使用了继承来扩展对象的功能,使得扩展缺乏灵活性,这样会导致子类的膨胀,如何使“对象功能的扩展”能够根据需要来动态地实现?同时避免“扩展功能的增多”带来的子类膨胀的问题?从而使得任何“功能扩展变化”所导致的影响降为最低?意图: 动态地给一个对象增加一些额外的职责。就增加功能而言,Decorator模式比生成子类更为灵活。 出自:《设计模式》GoFDeco... 阅读全文

posted @ 2007-04-14 20:17 tony.zjb 阅读(175) 评论(0) 推荐(0)

Bridge 模式
摘要:抽象A-------抽象b---------实现细节B抽象B----稳定实现细节B-----变化面向对象就是软件的复用,软件最伟大的地方就是复用 。bridge模式的解释:抽象部分与实现部分分离,使他们都可以独立的变化。bridge模式使用“对象间的组合关系”解耦了对象和实现之间固有的邦定,使得抽象(tank的型号)和实现(不同的平台)可以沿着各自的纬度来变化 所谓抽象和实现沿着各自纬度的变化,... 阅读全文

posted @ 2007-04-13 22:09 tony.zjb 阅读(216) 评论(0) 推荐(0)

Adapter 适配器模式
摘要:适配器模式:适配器模式允许将一个类的接口转换成客户期望的另一个接口,使得原本由于接口不兼容而不能一起工作的类可以一起工作。面向接口编程的原则:尽量将程序之中的参数,返回值,变量全都使用接口来代替。1:类适配器模式: 带来高耦合(不推荐)2:对象适配器模式:送耦合(推荐)适配器模式的应用:在.net之中复用com对象:--com对象不符合.net对象的接口--需要使用tlbimp.exe来创建一个r... 阅读全文

posted @ 2007-04-13 00:03 tony.zjb 阅读(214) 评论(0) 推荐(0)

关于高频查询界面
摘要:高频查询界面的ftp中的两个文件夹 1 :IncrementUpdate(增量更新)2:ErrorUpdate (错误更新) 1:软件更新的代码整理2:cclient的设置3:cserver的代码表管理4:cclient分时数据的查询。 软件更新包的名称 日期 (20070401.zip)客户端软件更新包的名称 (CClient_1.0.0.zip)服务器端软件更新包的名称 (CServ... 阅读全文

posted @ 2007-03-18 23:15 tony.zjb 阅读(222) 评论(0) 推荐(0)

[转]在.NET客户端程序中使用多线程
摘要:通常认为在编写程序中用到多线程是一个高级的编程任务,容易发生错误。在本月的栏目中,我将在一个Windows窗体应用程序中使用多线程,它具有实际的意义,同时尽量使事情简单。我的目标是在一个普通的需求描述中用最好的办法讲解多线程;客户仍然比较喜欢使用户交互方式的应用程序。 多线程通常和服务器端软件,可扩展性及性能技术联系在一起。 然而,在微软.NET框架中,许多服务器端应用程序都驻留在ASP.N... 阅读全文

posted @ 2007-03-09 15:11 tony.zjb 阅读(270) 评论(0) 推荐(0)

导航