阿里云飞天发布时刻,领先大模型限免,超7000万 tokens免费体验 了解详情
写点什么

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

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

关注

评论

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

【万字长文】探讨可信构架之道

华为云开发者联盟

架构 服务端

当心这些“坑”!阿里云服务器部署前后端分离项目

麦洛

nginx 前后端分离 跨域

20张图,大学四年都没整明白的操作系统就这么学会了

小Q

Java 程序员 架构 操作系统

indexOf原理,Java,javascript,python实现

叫练

算法

MySQL高性能架构设计原则

码界西柚

呕心沥血,整理200+最新面试题,面试之前看一下,事半功倍

小Q

Java 学习 程序员 架构 面试

新基建夯实粤港澳大湾区高质量发展基础

CECBC

区块链 人工智能 大数据

合约跟单app,永续合约交易所带单交易软件

模板方法模式——看看 JDK 和 Spring 是如何优雅复用代码的

Java架构师迁哥

教师节特别活动:第四范式多项自研技术及其应用实践分享

天枢数智运营

人工智能 推荐系统 第四范式 个性化推荐

协同新机遇:让研发敏捷起来

人称T客

未来经济 数字优先 | 大数据专场

腾讯云大数据

大数据

[翻译]Go Concurrency Patterns[Go 并发模式]

卓丁

Rob Pike Go Concurrency Patterns Concurrency Go 语言

传统产业数字化转型的思考与建议

CECBC

经济转型 企业经济

[翻译]The Go scheduler[Go调度]

卓丁

Go scheduler Go 语言

市值做市机器人,操盘做市系统搭建

使用开源软件构建工业互联网的平台

刘旭东

工业互联网 Odoo thingsboard

未读消息(小红点),前端与 RabbitMQ实时消息推送实践,贼简单~

程序员小富

Java RabbitMQ mqtt

XSKY ClickHouse如何实现存算分离

XSKY星辰天合

Polkadot初识,不止于跨链

QTech

polkadot 跨链

一步搞定任意圆角背景

mengxn

android xml 圆角

边缘计算,如何啃下集群管理这块硬骨头?

BoCloud博云

云计算 容器 边缘计算 PaaS 博云

甲方日常10

句子

工作 随笔杂谈 日常

The Go Blog-Article index

卓丁

去中心化交易所搭建,虚拟币去中心化交易系统

交易所开发

云图说 | GPU共享型AI容器,让AI开发更普及

华为云开发者联盟

AI 容器

大厂运维必备技能:PB级数据仓库性能调优

华为云开发者联盟

架构 数据

Redis 哨兵模式

是老郭啊

redis redis哨兵模式 redis哨兵 redis哨兵集群

物联网通信技术最全科普!你一定要了解的NB-IoT

华为云开发者联盟

物联网

CSS常用样式——绘制单(双)箭头的多种方法(2)

程序员学院

CSS html 程序员

LeetCode题解:225. 用队列实现栈,两个队列,压入 -O(1), 弹出 -O(n),JavaScript,详细注释

Lee Chen

大前端 LeetCode

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