2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

Composite Application Library 介绍

  • 2008-07-10
  • 本文字数:910 字

    阅读完需:约 3 分钟

微软模式与实践团队(patterns & practices)最近发布了 Composite Application Guidance for WPF 。该指导包中一个很重要的组成部分是 Composite Application Library ,一个创建复合 WPF 应用程序非常有用的类库。

除了推荐如何设计、开发和部署应用程序之外,微软模式与实践团队提供了他们推荐的参考实现或可复用的应用程序构造块。包括四种类型的指导:指导包、参考实现、软件工厂和应用程序块。Composite Application Guidance for WPF 除了推荐如何通过相互独立的模块构造大型复合 WPF 应用程序之外,还提供了一个名为 Stock Trader RI 的参考实现,一个称之为 Composite Application Library(CAL)的源代码库。据模式与实践团队所说,CAL 用以实现如下目标:

  • 由独立起作用而又互相协作的模块组合成客户端
  • 把主界面(外壳)开发者和模块建造者分离,这样做可以使业务开发小组集中精力开发特定领域的模块,而无需关注该 WPF 架构
  • 使用一个架构框架以产生一致和高质量的集成应用程序

模式与实践团队说道,CAL 使用了如下策略:

  • 它使用了依赖注入技术以简化代码来实现 Presentation-Model 和 Model-View-Presenter 模式
  • 它提供了一个加载模块的基础结构,并允许模块执行启动操作。模块也可以注册为共享组件以被其它模块或者外壳应用程序使用。
  • 它包含了一套广泛的单元测试源代码,开发者可以修改函数库源代码并使用单元测试验证其功能
  • 它为函数库服务分离了接口和具体实现

CAL 基于如下模式进行构造的:

  • 复合用户界面模式:复合和符合视图、命令模式、适配器模式
  • 模块化模式:分离界面和插件、服务定位、事件聚合、外观模式
  • 可测试模式:控制反转、分离表现

Composite Application Library 可以用来建造复合 WPF 应用程序,但它也可以通过扩展或替换核心元素进行定制以适应某些需要。类库源代码可通过修改以达到预期的功能。

查看英文原文: An Introduction to the Composite Application Library


译者简介:李会军(网名 TerryLee), 南开大学软件工程硕士,微软最有价值专家(MVP),多家 IT 杂志和 IT 网络媒体特约撰稿人,擅长基于.NET 平台的 Web 开发,业余爱好写作,在各类技术杂志和个人技术博客上撰写了大量的技术文章。他的个人网站为: http://www.dotneteye.cn

2008-07-10 21:481354

评论

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

nginx配置系列(三)日志配置

乌龟哥哥

4月月更

架构训练 模块4作业

小马

「架构实战营」

在 ABAP 技术栈里实施 Continuous Integration 的一些挑战

汪子熙

DevOps 持续集成 abap 5月月更 持续优化

决战摸鱼之巅:将vscode撸成可局域网联机对战的moba平台

gamedilong

前端 vscode nodejs Node 摸鱼

GitOps指南

俞凡

DevOps gitops

成为Java顶尖程序员之前,先过了下面问题才行

Java架构追梦

Java 后端开发 数据结构与算法

关于人才的招聘的一些看法(31/100)

hackstoic

团队管理 招聘

架构实战营作业四

库尔斯

#架构实战营

Java 从一个 List 中删除 null 元素

HoneyMoose

公司8java开发接私活被抓了,我说他最近咋这么飘

Java架构追梦

程序员 JAVA开发 java面试 后端开发

自己动手写 Docker 系列文章总览

Go Docker 4月月更

移动办公安全告急?融云 x 海泰方圆,给即时通讯加把「安全锁」

融云 RongCloud

高精度在线计时器(秒表)

入门小站

工具

Sentinel集群限流探索

艾小仙

sentinel 分布式限流 集群

linux之秘钥登录

入门小站

Linux

pinpoint插件开发之二:从零开始新建一个插件

程序员欣宸

Java 分布式 4月月更

头一次见这么牛的的SpringBoot从入门到实战文档

Java架构追梦

spring java面试 后端开发

面试了200多个程序员,多数上来就要20K,说实话6K我都不想给

Java架构追梦

Java 后端开发 程序员面试

[Day31-03]-[二叉树] BST树中的众数

方勇(gopher)

LeetCode 数据结构和算法

手撕阿里 Spring 框架:AOP、IOC、注解、事务,带你统统拿下

Java架构追梦

Java spring 程序员

vivo X80系列高端爆款之路:火把照耀在无人区

脑极体

阿里架构师耗时 176 天整理出来的 Java 独家面试题(10 万字面试总结)

Java架构追梦

程序员 java面试 后端开发

在线Excel转JSON工具

入门小站

工具

GitHub已置顶!Alibaba最终版Java面试小抄+架构师系统进阶指南

Java架构追梦

Java 后端开发 程序员面试

不要再焦虑了,进大厂真的没你想象的那么困难

Java架构追梦

[Day31-04]-[二叉树]二叉树的堂兄弟节点

方勇(gopher)

LeetCode 数据结构和算法

四面字节跳动Java研发岗,最终拿下Offer,只有努力,方能成功,老八股了

Java架构追梦

Java MySQL 程序员 后端开发

Gitea 的简单介绍

HoneyMoose

阿里架构师花两个月时间整理出来的Java独家面试题(Java岗)

Java架构追梦

Java 程序员 后端开发

对已有系统如何开展TDD

Bruce Talk

敏捷 敏捷开发 TDD Agile

从领导喊你回去改 Bug 来说如何取消 Dio 网络请求?

岛上码农

flutter ios开发 安卓开发 4月月更 跨平台开发

Composite Application Library介绍_.NET_Abel Avram_InfoQ精选文章