QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

.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:172635
用户头像

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

关注

评论

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

环信大学:AI赋能万亿"618",0成本轻松5步开启您的智慧客服之旅

DT极客

百度CTO的故事中,藏着中国AI的底色

脑极体

职能合约将如何在未来掀起一场革命?

CECBC

智能合约 区块链技术 去中心化 防篡改 自动执行

第三周学习总结

赵龙

第三章 课后作业

姜 某某

Apache Zeppelin:可能是开源届最好的Flink开发平台

Geek_8o1tcx

大数据 flink 流计算 Zeppelin

几种设计模式的使用场景

Acker飏

极客大学架构师训练营

单例模式的三种

王锟

第 3 周 - 学习总结

大海

架构师训练营第三周课后作业

Cloud.

关于区块链的那些事,看完可以防忽悠

CECBC

分布式 区块链技术 共识与信任

架构师培训营第三周总结

王锟

第三周作业

赵龙

「架构师训练营」第 3 周 学习总结

guoguo 👻

极客大学架构师训练营

探探上当代单身青年的倔强

脑极体

第三周作业

田振宇

架构师训练营——第三周作业

jiangnanage

架构师三期作业

老姜

架构师训练营第三周课后作业

不谈

极客大学架构师训练营

命题作业—第三周

于江水

极客大学架构师训练营

设计模式是架构师的必备武器

老姜

单例模式和组合模式练习

jason

架构师训练营第三周学习总结

不谈

极客大学架构师训练营

KairosDB Client使用总结

二哥不再迷茫

第三周总结

Linuxer

案例篇:服务吞吐量下降很厉害,怎么分析?

程序员老王

学习总结—第三周

于江水

极客大学架构师训练营

「架构师训练营」第 3 周作业

旭东(Frank)

极客大学架构师训练营 作业

数据库周刊29│2020数据库研究报告;Oracle取消今年技术大会;腾讯云DBbridge发布支持一键迁库;饿了么迁至阿里云;PG数组查询;Oracle被比特币勒索;DM8 安全管理…

墨天轮

MySQL 数据库 postgresql 腾讯云 阿里云

老板不断加需求、改需求的四种应对方法

金刚小书童

项目管理 需求管理

新基建核心技术人才缺口将达420万

CECBC

新基建 人才缺口 核心技术人才

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