2007年10月11日
摘要:
詐欺遊戯,一部很值得程序员看的日剧。 你有没有看到过一部电视剧,很大一部分都是在讲算法的? 你有没有看到过一部电视剧,它告诉你怎么利用人性弱点进行欺诈的? 你有没有看到过一部电视剧,你会只在意男主角却不会在意女主角的? 如果没有,那这部电视剧绝对值得你看。 好了,回到标题:詐欺遊戯-少数決,你如何立于不败之地? 这是这部电视剧里面的第二轮游戏,背景是这样的: 22个人从第一轮游戏胜出,进入第二...
阅读全文
posted @ 2007-10-11 13:07
Game_over
阅读(3043)
推荐(0)
2007年10月9日
摘要:
假如有这样一种需求:面向固定客户的网上购物系统,你会怎样设计这样的系统呢? 很显然,B/S结构已经不适用了。只要是通过浏览器访问的网页,只要知道URL,任何人都可以访问,就没有固定客户的限制了。 那么,C/S结构呢?C/S结构确实很适合局域网,但是,不要忘了,我们的客户可能会走遍地球的各个角落。(当然,不能连接Internet的地方我们不予考虑) 那我们考虑这样的结构:Winform(.Net)+...
阅读全文
posted @ 2007-10-09 12:02
Game_over
阅读(5650)
推荐(0)
2007年10月8日
摘要:
.Net对于远程调用提供了两种方法:Remoting和WebService。 WebService现在是如火如荼,特别是有一种比较流行的架构:Winform+WebService(Java、.Net), 我曾经做过的一个项目就是这样子的,分布式、跨平台、极佳的用户体验,这三者结合起来是不是很诱人? 不过,这里我只说Remoting,Remoting具有以下特点: 1、Tcp通道的Remoting速...
阅读全文
posted @ 2007-10-08 20:59
Game_over
阅读(20050)
推荐(0)
2007年10月4日
摘要:
在设计的过程中,经常会遇到IS-A和HAS-A的问题,相应的UML图也就有很大的区别,一个是继承,一个是组合。 这样的问题很难给出明确的答案,只能是根据实际的需求,结合项目规模来确定最后的设计原则。 当你发觉使用继承来扩展对象的功能会带来一些问题,例如: 1)扩展缺乏灵活性 2)子类膨胀 这个时候,你可以考虑使用组合的办法,而Decorator是一种很有效的组合模式。 类继承是静态扩展,而Deco...
阅读全文
posted @ 2007-10-04 22:01
Game_over
阅读(371)
推荐(0)
2007年10月2日
摘要:
这是一个最简单的模式,但同时也是最容易被误用、滥用的模式,怎样才能用好这个看似简单的模式呢? 在软件系统中,经常有一些类,必须保证它们在系统中只存在一个实例,才能确保逻辑的正确性以及良好的效率。例如,thread pools,caches,dialog boxes,还有Eclipse里面的preferencs设置。 下面是一个最简单的版本: public class Sing...
阅读全文
posted @ 2007-10-02 09:35
Game_over
阅读(381)
推荐(0)
2007年9月22日
摘要:
最近一个项目中作结合测试,需要测试数据流的正确性,这就需要在执行过一次完整的流程之后删除所有表中的数据。 当然了,如果只是几个表,那手动操作就很快了,但是在表很多的时候,就需要很多手工操作了。 还好,我们有很多简便的方法,可以自动的删除数据,下面就介绍两种,都是利用Oracle中的一个表--ALL_ALL_TABLES。 1)生成删除数据的语句 SELECT 'TRUNCATE TABLE '||...
阅读全文
posted @ 2007-09-22 21:30
Game_over
阅读(2525)
推荐(0)
2007年9月15日
摘要:
.net的反射以及用户界面的可配置性在一段200行的代码中体现的淋漓尽致。 只需要两个类,两个配置文件。 首先看一下配置文件的结构吧。 ControlColor.xml中定义了控件的名称、种类以及颜色。 SwitchTextLabel TxtPassword black,yellow,...
阅读全文
posted @ 2007-09-15 21:50
Game_over
阅读(978)
推荐(0)
摘要:
在写页面的时候,经常会对某些输入框进行一些限制,比如只能输入数字等。 这个时候,就用到了正则表达式。 所谓的正则表达式,就是用某种模式去匹配一类字符串的一个公式。 相信大家在大学的时候肯定学过形式语言与自动机、编译原理等课程,当时最深的印象就是正规文法与有限自动机的等价性,犹如天书啊。不过这种东西也是只有用过之后才会发现,其实没有那么深奥的,而且,一旦你弄懂它们,你就能把数小时辛苦而且易错的文本处...
阅读全文
posted @ 2007-09-15 21:31
Game_over
阅读(551)
推荐(0)
2007年9月12日
摘要:
有哲学基础的都知道,运动是绝对的,静止是相对的。 静态语言既然是客观存在,那么他必然遵守这个道。 但是如何化静为动呢? 还好,我们有两大法宝:多态,反射,利用这两个法宝,就可以实现对象的运行期邦定。 关于怎样利用反射实现动态加载Bean的文章、代码那是相当多了,我就不再举例了。 如果想深入了解的话,可以参考Spring的做法。 关于如何利用多态和接口实现运行时绑定的文章网上也是一找一堆的,也就不...
阅读全文
posted @ 2007-09-12 21:53
Game_over
阅读(555)
推荐(0)
摘要:
我是做Java的,是做.Net的,这两者最大的共同点就是编译期的类型检查。 某个特定类中,如果没有声明这个方法,你就不能够调用。 这种语言可以统称为静态语言。 相对的就是动态语言,例如Python,Ruby,Js。 下面是一段Python代码,如果是坚定的Java语言支持者的话,肯定会对之嗤之以鼻。 class Complex: def __init__(self, realpart, ...
阅读全文
posted @ 2007-09-12 21:52
Game_over
阅读(463)
推荐(0)