.NET乐园
一个梦想,一个行动…… (欢迎光临我的淘宝http://shop35795100.taobao.com,专营休闲服饰和运动鞋)
博客园
首页
新随笔
新文章
联系
订阅
管理
posts - 47,comments - 120,trackbacks - 35
<
2007年8月
>
日
一
二
三
四
五
六
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
与我联系
发短消息
搜索
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
给我留言
查看留言
我参与的团队
广州.NET俱乐部(0/1809)
ASP.NET AJAX (Atlas)学习(1/1357)
随笔分类
Ajax & Atlas(1)
ASP.NET(3)
SharePoint(2)
Visual Studio.NET(1)
电影音乐(2)
架构设计(25)
开发综合(2)
生活点滴(9)
项目管理(1)
随笔档案
2008年6月 (1)
2008年1月 (1)
2007年11月 (2)
2007年10月 (1)
2007年9月 (5)
2007年8月 (5)
2007年7月 (7)
2007年6月 (13)
2007年5月 (4)
2006年8月 (2)
2006年6月 (1)
2006年5月 (1)
2006年3月 (3)
文章分类
Visual Studio.NET
人生哲理(1)
生活感悟
影视娱乐
相册
花卉植物
收藏夹
ASP.NET(5)
SQL Server(1)
Visual Studio.NET
管理精髓(1)
.NET
AJAX学习Blog
Atlas官方
管理知识
经理世界网
最新评论
1. re: 再去听他的演唱会
哈哈,我去了30日的,那晚唱到12点呀
--jackyrong的世界
阅读排行榜
1. 内容发布系统的开发(6261)
2. 提升软件的用户体验(3091)
3. 随便谈谈最近参与的2个项目(1724)
4. 编译.NET项目提示“找不到系统命名空间,请添加系统组件的引用”问题的解决方法(该组件已被该项目正确引用)(991)
5. 关于Atlas Client Library(789)
评论排行榜
1. 内容发布系统的开发(40)
2. 随便谈谈最近参与的2个项目(23)
3. 提升软件的用户体验(17)
4. 把WebForm数据导出到Excel中(7)
5. 中奖的幸运与不幸(6)
设计模式学习笔记二十二——Strategy模式
动机
:定义一系列算法,把它们一个个封装起来,并且使它们可互相替换。该模式使得算法可独立于使用它的客户而变化。
场景
:设计一个自动投票程序,根据常用投票对象的计票策略不同,定义一系列不同自动投票策略,可根据投票对象策略选用适当的自动投票策略。
结构
代码
namespace
DesignPattern.Strategy
{
public
interface
IVoteStrategy
{
void
Vote();
//
统计投票情况
void
Stat();
}
public
class
VoteStrategyA : IVoteStrategy
{
public
void
Vote()
{
}
public
void
Stat()
{
}
}
public
class
VoteStrategyB : IVoteStrategy
{
public
void
Vote()
{
}
public
void
Stat()
{
}
}
public
class
VoteStrategyC : IVoteStrategy
{
public
void
Vote()
{
}
public
void
Stat()
{
}
}
}
namespace
DesignPattern.Strategy
{
public
class
AutoVote
{
private
IVoteStrategy strategy;
public
AutoVote(IVoteStrategy strategy)
{
this
.strategy
=
strategy;
}
public
IVoteStrategy Strategy
{
set
{
this
.strategy
=
value;
}
}
public
void
Vote()
{
//
strategy.Vote();
}
public
void
Stat()
{
//
strategy.Stat();
}
}
}
要点
:
1、Strategy及其子类为组件提供了一系列可重用的算法,从而使得类型在运行时方便地根据需要在各个算法之间进行切换,所谓封装算法,支持算法的变化。
2、本模式提供了用条件判断语句以外的另一种选择,消除条件判断语句,就是在解耦。含有许多条件判断语句的代码通常都需要本模式。
3、与State模式类似,如果Strategy对象没有实例变量,那么各个上下文可以共享同一个Strategy对象,从而节省对象开销。
欢迎访问我的淘宝
http://shop35795100.taobao.com
,专营衣服和鞋子。
posted on 2007-08-24 00:25
Charly
阅读(236)
评论(1)
编辑
收藏
网摘
所属分类:
架构设计
FeedBack:
#1楼
2008-04-12 13:36 |
蓝奇高级验证码识别引擎QQ:631753663 [未注册用户]
出售***,可准确地自动识别新浪动网淘宝CSDN等多种复杂验证码。为您制作投票软件、自动充值及其它自动提交程序铺平道路。
输出为一个标准DLL,可供VB,VC,Delphi,C#.NET,VB.NET,模拟精灵,按键精灵等多平台调用,调用方法简单,几行代码即可完成。独具特色的边缘检测字符分离、旋转倾斜纠正和通用字符匹配算法(无论字体和大小), 使得该引擎对于像新浪、动网、淘宝、CSDN等多种验证码均有不错的识别率,是一款效果较为理想的验证码识别引擎。附详细的调用实例和代码注释等相关技术文档。
同时提供专业发贴机、自动投票机、自动查询器、自动充值机等各类网络软件的定制,以及各种复杂验证码的识别服务,价格依软件具体难度而定。
QQ:631753663
手机:13517270758
MSN: rapboyhaha@hotmail.com
回复
引用
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
人才
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
该文被作者在 2007-08-24 00:37 编辑过
Google站内搜索
China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
相关文章:
相关链接:
所属分类的其他文章:
设计模式学习笔记二十五——总结
设计模式学习笔记二十四——Visitor模式
设计模式学习笔记二十三——TemplateMethod模式
设计模式学习笔记二十二——Strategy模式
设计模式学习笔记二十一——State模式
设计模式学习笔记二十——Memento模式
设计模式学习笔记十九——Observer模式
设计模式学习笔记十八——Mediator模式
设计模式学习笔记十七——Iterator模式
设计模式学习笔记十六——Interpreter模式
最新IT新闻:
Silverlight 2 SDK中文版发布
[译稿]微软将 jQuery IntelliSense整合到Visual Studio
微软:不裁员也不削减研发开支
2008年11月22日科技博客精选
诺基亚将支持Lotus Notes 和黑莓争夺市场