深入解析Windows Communication Foundation:从基础到应用
1. 软件复用的困境与解决方案
在软件开发领域,软件复用一直是提高效率和质量的重要手段。然而,传统的COM、.NET和Java等技术在软件复用方面存在诸多限制。例如,Java开发的软件难以与使用COM或.NET开发的软件轻松集成。而且,自COM引入后流行的面向组件编程风格,在重用远程类实例时效率极低。这是因为在这种场景下,对象实例化、属性赋值、方法调用和事件处理等操作都需要跨进程边界甚至网络进行来回通信,涉及数据编组、安全检查、数据包路由等额外工作,导致性能大幅下降。
为了解决这些问题,Web服务描述语言(WSDL)应运而生。它使用广泛采用的可扩展标记语言(XML)来定义软件接口,实现了Java与COM、.NET开发的软件之间的集成。同时,面向服务的编程(Service - Oriented Programming)逐渐成为一种适合重用远程类实例的替代方案。
面向服务的编程中,可重用的类是服务,即实现面向网络编程接口的类(WSDL是描述这些接口的一种方式)。服务通过将来回传输的数据打包成消息,减少对服务的调用次数。消息是一种特殊的数据传输对象,由提供数据传输操作信息的头部和包含实际传输数据的主体两部分组成。发送方和接收方通过共享消息格式实现松散耦合,从而可以独立发展。
服务导向架构(Service - Oriented Architecture)则是一种通过为企业软件提供服务外观,并将服务描述发布在中央存储库(如通用描述、发现和集成(UDDI)注册表)中来组织企业软件的方法。它不仅能让企业了解软件的复用可用性,还能关联服务策略,实现对软件实体的集中控制和性能监控。
超级会员免费看
订阅专栏 解锁全文
47

被折叠的 条评论
为什么被折叠?



