写点什么

.NET 中的 Command(命令)模式

  • 2012-04-18
  • 本文字数:537 字

    阅读完需:约 2 分钟

Command(命令)模式中,使用对象来表示和封装稍后调用该方法所需的全部信息——这些信息包括方法名、拥有该方法的对象、及参数值。在系列文章“.NET 中的Command(命令)模式”的第一部分中,Eric Vogel 介绍了在WPF 应用程序上下文中对 ICommand 接口的使用。

Command(命令)通常是指某个操作,及知道如何执行此操作的命令对象。那些命令对象本身会实现通用接口——调用者无需知道任何实现细节,只需通过此接口即可调用方法。这有助于将调用该操作的对象与知道如何执行此操作的对象相分离,从而带来清晰的关注点分离

在Silverlight 或WPF 应用程序中使用ICommand 接口的主要目的是,为了保持XAML 隐藏视图的洁净,不掺杂任何用户交互代码。对于理解如何在Silverlight 应用程序中实现此目的,“在Silverlight 中使用ICommand 接口”也是篇佳作。因为命令对象可以排队等待稍后对它们方法的调用,所以此模式对于实现 Undo-Redo(撤销 - 重做)功能也相当有用。

请注意,ICommand 接口本身对于实现 Command(命令)模式并不是必须的——为了定义某个 Command(命令),你可以创建自己的接口或抽象类。这些示例展示了在不依赖ICommand 接口的情况下使用Command(命令)模式,不过使用的都是相同的基础概念。

查看英文原文: Command Pattern In .NET

2012-04-18 11:172844
用户头像

发布了 55 篇内容, 共 20.4 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

金三银四,如何远程面试拿下大厂offer?(附大厂面经+面试宝典)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

疫情在家“闭关修炼”,读完这些Java技术栈,愿金三银四过五斩六

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

iOS 开发技术栈与进阶

iOSer

ios 面试 iOS 知识体系 iOS技术栈

通俗易懂的ReentrantLock,不懂你来砍我

程序猿阿星

AQS 公平锁 非公平锁 独占锁 ReentrantLock;

中国如何应对中美博弈?

石云升

学习 贸易战 8月日更

原理分析!如何将springboot项目打成war包放入tomcat中运行

Summer

Java 学习 程序员 架构 springboot

巧用Python访问台达AS228交互

林建

Python Modbus协议 台达 AS228T

如何实现H.264的实时传输?

拍乐云Pano

20张图让你彻底掌握负载均衡的秘密

负载均衡 编程 程序员 计算机

肺炎在家“闭关”,阿里竟发来视频面试,4面顺利拿下offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

冲击“金九银十”的利器!《Java权威面试指南(阿里版)》人手一份吊打面试官轻轻松松!

Java 编程 IT 计算机 知识分享

微博SDK初始化问题 please init sdk before use it. Wb.install()

mengxn

微博sdk

TCP 四次挥手

W🌥

计算机网络 TCP/IP 8月日更

疫情之下,延期返工,我竟然“远程面试”了3家公司(备战春招)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

终于有人!把双十一电商秒杀系统高并发架构全部讲清楚了

Java 程序员 面试 高并发 计算机

啃完这些Spring知识点,我竟吊打了阿里面试官(附面经+笔记

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

远程办公一星期,竟等来了阿里新零售视频面(Java岗,已过2面)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

Fil价格今日行情?Fil有投资的价值吗?

区块链 分布式存储 IPFS fil fil价格今日行情怎么样

区块链钱包搭建,去中心钱包搭建,仿IM钱包

最全总结 | 聊聊 Python 数据处理全家桶(PgSQL篇)

星安果

Python 数据库 postgresql PgSQL

Flink CDC 2.0 正式发布,详解核心改进

Apache Flink

flink

如何在多云环境中建立信任

云计算

去中心化DeFi系统开发

Geek_23f0c3

智能合约 DeFi去中心化系统开发 DAPP智能合约交易系统开发

如何快速定位程序Core?

百度Geek说

Linux 后端

GitHub星标63K霸榜半月!阿里大牛的微服务分布式架构笔记已上线

Java 编程 IT 计算机 知识

滴滴架构师被迫离职后,只留下这份731页Java程序性能优化手册

Java 编程 架构 面试 调优

运维工程师核心工作是什么?用什么运维工具好?

行云管家

云计算 运维 IT运维

Flutter Android 端 FlutterInjector 及依赖流程源码分析

工匠若水

flutter android 8月日更

FastApi-12-Form表单

Python研究所

FastApi 8月日更

更智能更高效!区块链打造更“美” 服装行业

旺链科技

区块链 服装产业

【共识专栏】HotStuff共识

趣链科技

区块链 共识机制 拜占庭容错 共识算法

.NET中的Command(命令)模式_.NET_Roopesh Shenoy_InfoQ精选文章