继承和多态
摘要:曾经和一个朋友聊谈到单例模式。当时那个朋友说了点对单例模式的独特见解:如果Singleton类有几个子类的话,那么就可以控制着几个类型只有一个实例,甚至还可以做更复杂的控制。当时大家也都是随便说说,现在想起来,确实是很有道理。一般来说,Singleton类的构造方法是private的,但是如果是protected,那么就是既可以有子类,又确保外部程序不能通过构造器生成类型的实例。 ...
阅读全文
posted @
2007-10-26 22:16
Game_over
阅读(2257)
推荐(0) 编辑
对象解耦和设计模式
摘要:不知道各位对这几个概念:封装、继承和多态是怎样理解的,也许大家都在脑海中有那么一种印象,但是每个人也都不不同的看法,我先说说我的看法: 封装,就是把对象的属性和行为包装起来,隐藏属性,公开行为。 继承,是子类和父类之间共享属性和行为的机制。 多态,是对象的消息处理机制,不同的对象接收到同一个消息可以产生完全不同的结果。 那么多的设计模式,那么多的软件架构,无非就是封装和解耦、继承和关联、多态和转型...
阅读全文
posted @
2007-10-13 23:09
Game_over
阅读(8014)
推荐(2) 编辑
詐欺遊戯-少数決,你如何立于不败之地?
摘要:詐欺遊戯,一部很值得程序员看的日剧。 你有没有看到过一部电视剧,很大一部分都是在讲算法的? 你有没有看到过一部电视剧,它告诉你怎么利用人性弱点进行欺诈的? 你有没有看到过一部电视剧,你会只在意男主角却不会在意女主角的? 如果没有,那这部电视剧绝对值得你看。 好了,回到标题:詐欺遊戯-少数決,你如何立于不败之地? 这是这部电视剧里面的第二轮游戏,背景是这样的: 22个人从第一轮游戏胜出,进入第二...
阅读全文
posted @
2007-10-11 13:07
Game_over
阅读(3028)
推荐(0) 编辑
一个基于Winform+Java WebService的实现
摘要:假如有这样一种需求:面向固定客户的网上购物系统,你会怎样设计这样的系统呢? 很显然,B/S结构已经不适用了。只要是通过浏览器访问的网页,只要知道URL,任何人都可以访问,就没有固定客户的限制了。 那么,C/S结构呢?C/S结构确实很适合局域网,但是,不要忘了,我们的客户可能会走遍地球的各个角落。(当然,不能连接Internet的地方我们不予考虑) 那我们考虑这样的结构:Winform(.Net)+...
阅读全文
posted @
2007-10-09 12:02
Game_over
阅读(5629)
推荐(0) 编辑
C# Remoting的一个简单例子
摘要:.Net对于远程调用提供了两种方法:Remoting和WebService。 WebService现在是如火如荼,特别是有一种比较流行的架构:Winform+WebService(Java、.Net), 我曾经做过的一个项目就是这样子的,分布式、跨平台、极佳的用户体验,这三者结合起来是不是很诱人? 不过,这里我只说Remoting,Remoting具有以下特点: 1、Tcp通道的Remoting速...
阅读全文
posted @
2007-10-08 20:59
Game_over
阅读(20009)
推荐(0) 编辑
设计模式之Decorator
摘要:在设计的过程中,经常会遇到IS-A和HAS-A的问题,相应的UML图也就有很大的区别,一个是继承,一个是组合。 这样的问题很难给出明确的答案,只能是根据实际的需求,结合项目规模来确定最后的设计原则。 当你发觉使用继承来扩展对象的功能会带来一些问题,例如: 1)扩展缺乏灵活性 2)子类膨胀 这个时候,你可以考虑使用组合的办法,而Decorator是一种很有效的组合模式。 类继承是静态扩展,而Deco...
阅读全文
posted @
2007-10-04 22:01
Game_over
阅读(364)
推荐(0) 编辑
设计模式之Singleton
摘要:这是一个最简单的模式,但同时也是最容易被误用、滥用的模式,怎样才能用好这个看似简单的模式呢? 在软件系统中,经常有一些类,必须保证它们在系统中只存在一个实例,才能确保逻辑的正确性以及良好的效率。例如,thread pools,caches,dialog boxes,还有Eclipse里面的preferencs设置。 下面是一个最简单的版本: public class Sing...
阅读全文
posted @
2007-10-02 09:35
Game_over
阅读(374)
推荐(0) 编辑