自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

从阶乘的实现的例子,一步一步看程序架构的演化。

阶乘设计的演化过程Table of Contents1 递归方式2 封装进一个工具类3 迭代实现4 解决返回值超出整型最大值问题5 加入缓存机制6 使用接口编程,把算法实现推向实现,即使用了策略模式7 如何实现这种方式的动态调用?7.1 用map存储类映射7.2 重写阶乘工具类7.3 缓存实现7.4 迭代实现7.5 递归实现...

2011-09-14 15:26:59 236

05年写的一个儿时玩的4子棋游戏

如看不到图片,请点击下面的链接http://hi.baidu.com/dapplehou/blog/item/5ddafdfae8a860cfb58f31b3.html 儿时常和伙伴们玩下棋游戏,比如动物棋、两子棋、四子棋(我们叫这种棋为两个打一个)。后来学象棋,就不玩它们了,但能勾起特别多的对童年幸福时光的回忆。因为怀旧,就写了这样一个小游戏。一开始,两军对垒:如果自...

2010-12-12 12:49:48 809

写了一个MSN客户端

想借用免费服务器做网络应用,MSN服务器是一个选择,今天对它做了个简单测试,发现没问题,顺便就写了个Java版本的MSN客户端,Linux下也可用。这里有几张截图 见这里:http://hi.baidu.com/dapplehou/blog/item/6da2ddc4849accda38db497a.html...

2010-12-06 09:47:51 176

写了一个快速阅读训练的小软件

看过某篇教人快速阅读的文章,方法是让遮挡物从书的第一行到最后一行匀速移动‍,越遮越多,从而制造紧迫感,逼迫人进行快速阅读,久而久之,人的阅读速度就会有大幅的提升。我觉得这个完全可以写个程序实现,就周末抽了点时间写了一个。这里截了几个图,功能很简单,界面也不好看,但遮挡功能无碍,而且是自己用着玩,就不费时间在界面上花心思了。 百度贴图设置了防盗链,JavaEye好像又不安全(会被关闭),所以...

2010-11-28 22:40:46 261

Concurrent包常用方法简介

Table of Contents1 Executor接口 2 ExecutorService接口 3 ScheduledExecutorService接口 4 Executors类 5 结束 1 Executor接口留给开发者自己实现的接口,一般情况下不需要再去实现。它只有一个方法void execute(Runnable comma...

2010-11-05 23:54:07 167

Java 并发

并发Table of Contents1 什么是并发问题。 2 java中synchronized的用法 3 Java中的锁与排队上厕所。 4 何时释放锁? 5 Lock的使用 6 利用管道进行线程间通信 7 阻塞队列 8 使用Executors、Executor、ExecutorService、Thread...

2010-10-18 15:56:42 651

不同Framework中DAO层的分析

http://hi.baidu.com/dapplehou/blog/item/6ba8034f5114e038aec3abdb.html Table of Contents1 言前2 项目1 (久远,尚无SSH流行)2.1 使用方式2.2 原理2.3 UML2.4 优点2.5 缺点3 项目23.1 使用方式(步骤)3.2 原...

2010-09-13 15:06:23 219

数据库的哈希设计

数据库的哈希设计Table of Contents1 用哈希的key代替字符串上的索引,提高查询效率。 1.1 什么是hash 1.2 如何在数据库设计中使用hash 1.3 使用计算列 1.4 如何在多表关联中使用哈希 2 库表散列 2.1 ORAHASH 函数 2.2 哈希拆分例1 2.3 哈希拆分例2 2.4 除留余数法 ...

2010-08-18 17:01:27 389

一例胜千言,详谈SQL Sever数据库锁

数据库锁Table of Contents1 前言 2 锁的种类 3 何时加锁? 4 锁的粒度 5 锁与事物隔离级别的优先级 6 数据库的其它重要Hint以及它们的区别 7 锁的超时等待 8 附:各种锁的兼容关系表 9 如何提高并发效率 10 后记 1 前言 数据库大并发操作要考虑死锁和锁的性能问题。看到网上大多语焉...

2010-08-05 17:01:02 1237

来点简单的,Adaptor 适配器模式

今天看了黑暗浪子的博客,喜欢他的博客,一看就是个爽快人。很高兴,一高兴,就想起来贴篇自己的文章以示高兴。封装思想的又一种应用。类似挂羊头卖狗肉。比如一个类业已存在(类A),且正合我用,唯一遗憾是该类的方法名与用户要求的不同,那么用另一个新的、方法名符合规定的类套在类A身上是最顺其自然不过的方法了。新类的所作所为无非都是通过调用类A而实现。在什么场合才需要挂羊头卖狗肉。第一,用户不关...

2010-06-22 17:04:56 123

职责链模式(Chain of responsibility)以及servlet中filter的原理

先看经典职责链代码,(代码来自维基)[code="java"]package pattern;import java.io.*;abstract class PurchasePower { protected final double base = 500; protected PurchasePower successor; public vo...

2010-06-21 22:51:33 147

工厂方法模式(Factory method)以及与抽象工厂(abstract factory)的区别

先看经典说法,Define an interface for creating an object, but let subclassesdecidewhich class to instantiate. Factory Method lets a class deferinstantiation to subclasses. ----Gang of Four (定义一个创建对象的...

2010-06-14 13:48:57 313

命令模式(command pattern)

命令模式,实现了把命令调用与命令执行分开。用途广泛。它可以批量执行命令,比如它可以用于进度条的显示。多个命令顺序执行,进度条来表示命令的执行进度。如果每个命令都用command封装,成为命令对象(command object),并且每个命令对象都有获取执行时间的方法,那么就可以方便的获取整个执行过程的时间。据此就可以用进度条显示出这一系列任务的执行进度。它可以实现重做(un...

2010-06-09 16:44:58 158

面向对象更是一种方法论

面向对象更是一种方法论,而不仅仅是一种技术。掌握一种技术可以解决某一特定问题,掌握一种方法却可以随机应变、因势利导、因地制宜。就像张无忌学习太极拳,招式忘记的越多,拳中的圆转不断之意领会的越深,所能解决的问题域就越阔,威力也就越大。如何去看决定了看到了什么。面向对象也是如此。从技术实现角度看,对象就是拥有方法的数据,就是属性和方法的结合。在这种思维的指导下,构建对象就变成了去搜集属性和方法...

2010-06-03 11:26:49 141

亨元模式(Flyweight pattern)

翻译为亨元模式,或直译为轻量级模式。所谓亨元,就是被其它对象共享使用的对象。通过这种方式,系统减少了内存的占用。比如一个系统有一个成百上千、成千上万的小对象,这些小对象可能拥有着共同的信息,那么这些共同的信息就没有必要也重复成千上万次。把这些共同信息抽取出来,形成一个对象,即是亨元。这些成千上万的其它对象只需要引用这个亨元即可。举个例子,在棋类程序中,有时候我们会把一个棋子...

2010-05-30 22:24:40 208

Singleton Pattern 单态模式

Singleton Pattern 单态模式。这个模式较简单,就是为了保证一个类只有一个实例,用一个入口来获取该实例。例子如下(代码来自维基):[code="java"]class Foo { private static Helper helper = null; private Foo(){} public static Helper ge...

2010-05-29 15:38:16 103

空空如也

空空如也

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

TA关注的人

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