惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
Recent Announcements
Recent Announcements
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
J
Java Code Geeks
T
The Blog of Author Tim Ferriss
MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
aimingoo的专栏
aimingoo的专栏
U
Unit 42
The GitHub Blog
The GitHub Blog
云风的 BLOG
云风的 BLOG
T
Tailwind CSS Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
博客园 - 司徒正美
腾讯CDC
I
InfoQ
GbyAI
GbyAI
博客园_首页

博客园 - 沧海一声笑

关于UltraWinGrid选中行只读设置 关于chrome 插件PageMonitor 安装及使用步骤 关于UNICODE字符串的匹配问题 关于string的indexof方法的试验 关于字符串效率问题 C# 字符转ASCII码,ASCII码转字符 [转一下] 抉择 随记一下 关于域用户的AD验证 关于异步委托的部分理解 基于深度优先搜索的蜘蛛程序 观察者模式的简单实现与讨论 下拉框自动回发! 国庆前生活学习计划 2007年总结 看完色戒有感 年前工作计划 Psytopic性格测试! 求助? 关于购买开发用途笔记本的配置 及推荐品牌和型号! 谢谢! 转帖:真爱 就不要等
关于命令模式的一些理解
沧海一声笑 · 2009-08-03 · via 博客园 - 沧海一声笑

   今天,打算看看命令模式了。以前记得在一个项目中,可以要求记录删除的记录,就用了这个模式,问题解决了,当时还把核心的几个类保存了一下,结果到头来忘得一干二净!
所以说呢,技术这个东西用的时候干脆搞懂,要不过了几天就基本忘了。
   言归正传,命令模式还是蛮有用的,我看了Head First那本书,感觉文字的东西看的费神,索性直接奔类图去了:类图如下:
   
      最简单的类图基本就是上面这个了,看了看他们之间的依赖关系,大致按照我的理解弄明白怎么回事了:
其实Invoker类其实相当于 命令的执行者,client相当于框架类类似于调用MAIN函数的那个类,上面类图中的依赖的话,可以当成具体命令的生成工具吧。Receiver相当于干活的人,
剩下就是命令的接口和具体命令类,当然具体命令类中需要制定接受者!
    具体过程: new 一个receiver R
                   new 一个Client类 C 传入R当作参数,
                   new一个ConcreteCommand类 返回ICommand对象给C持有
                   new一个Invoker对象 设置ICommand为C.ICommand;
                   Invoker执行一下它持有的命令对象的DO函数,进入命令对象do函数执行R.ACTION();

       这样应该是一个基本的过程,都是从图上看的,我看head first关于命令模式后面还有些篇幅,下次再看看。
      总之感觉看类图的话,还省点力气,也理解快点。