写点什么

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:481610

评论

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

不懂代码也能搞AI?是的,AI开发平台让你“和AI对话”就搞定智能应用!

红迅AI低代码老陈

低代码平台 AI开发平台 红迅低代码开发平台

业务人员也能用的 AI 数据分析工具?Aloudata Agent “开箱即用”体验报告

Aloudata

数据分析 归因分析 ChatBI 智能问数 dataagent

AI Compass前沿速览:Open-AutoGLM智能体框架、Z-Image图像生成、GLM-4.6V多模态理解与可灵2.6音画同步技术

汀丶人工智能

Java 王者修炼手册【Redis 篇 - 进阶数据类型】:吃透布隆过滤器 / Redisson 分布式锁 / Geo/Bitmap/HLL 核心原理与实战场景

DonaldCen

布隆过滤器 BitMap geo redisson 分布式锁

Forrester发布流式数据平台报告:Ververica首次跻身领导者行列,实时AI能力获权威认可

阿里云大数据AI技术

flink 阿里云 Forrester

Bonree ONE 发布直通车| 如何利用核心链路,快速排查定位系统故障?

博睿数据

Bonree ONE

你的同行都在偷偷用的AI开发平台,到底强在哪里?三大高阶场景曝光。

红迅AI低代码老陈

低代码平台 AI开发平台 红迅软件

如何用ETL做实时风控?从交易日志到告警系统的实现

谷云科技RestCloud

数据库 kafka 数据安全 ETL 数据集成

从死磕一款 App 到坐拥 30 款产品矩阵,他是如何不到一年做到月入 16 万的?

田威AI

core文件生成位置及命名

天翼云开发者社区

操作系统 底层测试

不造车却对标特斯拉,地平线的三张底牌

脑极体

AI

openresty共享内存的使用

天翼云开发者社区

CDN

融云对话 Agent 入选艾瑞咨询「2025 年中国营销智能体产业全景图」

融云 RongCloud

枫清科技荣登ADD数据应用场景大会「2025数据应用创新榜单」

Fabarta

数据应用

延锋国际 X 阿里云:全栈AI加速汽车产业智能升级!

科技汇

Docker 里面不能使用 127.0.0.1 来访问宿主机

玄兴梦影

Docker Docker Compose

压缩而不失智:LLM 量化技术深度解析

Baihai IDP

AI 模型量化 LLM

超越硬件堆砌:解读现代超融合平台的软件定义核心

智驱前线

CDN热点扩散原理

天翼云开发者社区

CDN

2025-2026年中国智能客服行业研究及消费者洞察报告

米兰小铁匠

大数据 智能客服 AI智能客服 DeepSeek 大模型客服

详解Adobe Experience Manager存储型XSS漏洞CVE-2025-64829

qife122

网络安全 Adobe Experience Manager

Adobe Experience Manager 存储型XSS漏洞CVE-2025-64800技术解析

qife122

网络安全 WEB安全

数智先锋 | 博睿数据×海尔消费金融:破解高频并发与强监管难题!

博睿数据

Bonree ONE

一款开源、现代化的 WinForm UI 控件库

追逐时光者

.net

融云与阿里云联手,共同按下「AI+通信云」生态加速键

融云 RongCloud

模糊测试助力黑客攻防:关键信息泄露漏洞挖掘实录

qife122

网络安全 模糊测试

深入解析 Disruptor:从RingBuffer到缓存行填充的底层魔法

poemyang

并发编程 Disruptor 多线程

Docker 访问宿主机资源的最佳实践总结

玄兴梦影

Docker 访问方法 Docker Compose

3个方法把gemini3做的应用部署成网站!

阿星AI工作室

产品 AI gemini

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