随着核心Web服务标准(SOAP和WSDL)逐渐被广泛采纳和应用,高度异构的软件系统之间的互操作性取得了前所未有的进步,同时它也在安全性、事务性、可靠性方面提出了新的要求,以至于后来又推出了大量的Web服务补充标准。在.NET平台下做分布式开发,都会涉及到以下技术:ASP.NET服务、Web服务增强、.NET Remoting、MSMQ等,这些技术各自独立,编程模型差别较大,无法用一种统一的编程模型进行分布式应用程序开发。7813
Windows Communication Foundation(WCF)是用来在不同应用间进行互通信的一个编程框架,它是.NET Framework中偏重于通信的重要组成部分。原代码名为Indigo的这个编程框架,在其Beta2版本时正式更名为WCF,于2006年12月作为.NET Framework 3.0的4套API之一发布。
从Native Win32到Managed的世界,应用进程间的通信机制一直是开发者最为关注的方面,在.NET Framework 2.0(2005年11月发布)及以前的CLR版本中,微软提供了若干套相互分开的APIs,来支持应用间的互通信:有相对基础的Managed Socket机制;有为二进制优化而设计的.NET Remoting(同时支持TCP/HTTP/Pipline);有可支持事务的通信机制Distributed Transactions;还有为使互操作能力最大化而设计的Soap-based通信机制XML Web Services;也有可以与老式遗留系统(COM/COM+/MTS等)异步通信的机制Message Queues。由于这些各种各样的通信机制设计方法不同,而且彼此间也有重叠性,对于开发者来说,不同的选择须要学习掌握不同的程序设计模型,非常不方便。另外SOA(Service-Oriented Architecture)也开始盛行,随着技术的推进,微软重新审视了.NET中的这些通信机制,设计实现了一个统一化的通信编程开发模型,这就是WCF,它为.NET平台上的数据通信提供了最基本最富有弹性和一致性的基础设施。
WCF是按照SOA的架构原则设计的分布式计算基础环境,在其上开发人员可以实现各种Services提供给客户端消费者来调用。WCF提供了各种各样的基础结构来最大程度地为开发人员提供方便性和灵活性,快速有效地构建Web Service应用。
WCF的魅力除了来自于它为开发人员所提供的模型和基础外,还来自于它自身的设计和实现。2006年WCF随.NET 3.0发布时,其中恰到好处的抽象、分层和模块关系,简洁高效地运行时模型与框架机理,以及各部分丰满实在的内在实现,还有它相当彻底的可扩展性设计,都是我们学习架构设计的绝佳范本。可以说,WCF是微软SOA思文的第一轮近乎完美的演绎。自WCF发布以来,它迅速成为微软技术体系下企业级应用开发的首选平台,时间证明了它在微软SOA战略中的基石地位。
1.2.2 国内研究现状
自从WCF推出后,国内很多程序员和编程社区也纷纷跟进,发表了大量的技术分析文章,并开发了一些基于WCF的应用程序,对WCF的外文图书的翻译也在进行中。总体而言,国内WCF研究工作与国外是同步的,但在WCF的应用上相对较少。
第三届中国IT技术趋势大调查活动于2008年9月15日启动,历经1个月的时间。在线调查期间,受到了来自ITPUB、IXPUB和ChinaUnix.NET(以下简称CU)以及其它合作网站的网友的极大关注和积极参与。目前调查已经完满结束,所有的数据都在后台整理和统计之中。本次网上调查共回收调查问卷25,946份问卷,其中合格问卷为23,804份。
调查的内容涉及:中国IT人才发展环境、企业信息化、信息安全、服务器、存储、网络管理、.NET、JAVA、软件测试、项目管理和数据库应用等11方面的研究成果,这些将最终形成了《2008-2009年IT技术应用趋势调研报告》,并将整合到《2008-2009中国IT应用技术蓝皮书》中,于2009年1月份第3届中国IT技术精英大会上对外发布。 WCF消息推送国内外研究现状和发展趋势:http://www.youerw.com/yanjiu/lunwen_5904.html