WCF知識結(jié)構(gòu)學(xué)習(xí)經(jīng)驗(yàn)總結(jié)
WCF開發(fā)框架是在技術(shù)更新?lián)Q代速度非??斓臅r代中脫穎而出的一款非常出色的開發(fā)工具,對開發(fā)人員來說是非常有用。我們今天就來看看在學(xué)習(xí)WCF知識結(jié)構(gòu)時的經(jīng)驗(yàn)總結(jié)。#t#
原代碼名為Indigo的這個編程框架,在其Beta2 版本時正式更名為WCF,于2006年12月作為.NET Framework 3.0的4套API之一發(fā)布。
從Native Win32到Managed的世界,應(yīng)用進(jìn)程間的通信機(jī)制一直是開發(fā)者最為關(guān)注的方面,在.NET Framework 2.0(2005年11月發(fā)布)及以前的CLR版本中,微軟提供了若干套相互分開的APIs,來支持應(yīng)用間的互通信:
有相對基礎(chǔ)的Managed Socket機(jī)制;
有為二進(jìn)制優(yōu)化而設(shè)計的.NET Remoting(同時支持TCP/HTTP/Pipline);
有可支持事務(wù)的通信機(jī)制Distributed Transactions;還有為使互操作能力最大化而設(shè)計的Soap-based通信機(jī)制XML Web Services;
WCF知識結(jié)構(gòu)也有可以與老式遺留系統(tǒng)(COM/COM+/MTS等)異步通信的機(jī)制Message Queues。
由于這些各種各樣的通信機(jī)制設(shè)計方法不同,而且彼此間也有重疊性,對于開發(fā)者來說,不同的選擇須要學(xué)習(xí)掌握不同的程序設(shè)計模型,非常不方便。另外SOA(Service-Oriented Architecture)也開始盛行,隨著技術(shù)的推進(jìn),微軟重新審視了.NET中的這些通信機(jī)制,設(shè)計實(shí)現(xiàn)了一個統(tǒng)一化的通信編程開發(fā)模型,這就是WCF,它為.NET平臺上的數(shù)據(jù)通信提供了最基本最富有彈性和一致性的基礎(chǔ)設(shè)施。
WCF知識結(jié)構(gòu)是按照SOA的架構(gòu)原則設(shè)計的分布式計算基礎(chǔ)環(huán)境,在其上開發(fā)人員可以實(shí)現(xiàn)各種Services提供給客戶端消費(fèi)者來調(diào)用。WCF提供了各種各樣的基礎(chǔ)結(jié)構(gòu)來最大程度地為開發(fā)人員提供方便性和靈活性,快速有效地構(gòu)建Web Service應(yīng)用。
WCF的魅力除了來自于它為開發(fā)人員所提供的模型和基礎(chǔ)外,還來自于它自身的設(shè)計和實(shí)現(xiàn)。記得,第一次了解WinFx中Indigo的使命時,我就對它充滿了期待,同時也有幾分的懸疑。
當(dāng)2002年得知Don Box加入微軟負(fù)責(zé)Indigo的架構(gòu)時,懸疑徹底被轉(zhuǎn)化,成為更多的期待,我更加關(guān)注它每個版本的成長,到2006年WCF隨.NET 3.0發(fā)布時,呈現(xiàn)在我們面前的WCF堪稱經(jīng)典。
其中恰到好處的抽象、分層和模塊關(guān)系,簡妙高效的運(yùn)行時模型與框架機(jī)理,以及各部分豐滿實(shí)在的內(nèi)在實(shí)現(xiàn),還有它相當(dāng)徹底的可擴(kuò)展性設(shè)計,都是我們學(xué)習(xí)架構(gòu)設(shè)計的絕佳范本。
可以說,WCF知識結(jié)構(gòu)是微軟SOA思維的第一輪近乎完美的演繹。自WCF發(fā)布以來,它迅速成為微軟技術(shù)體系下企業(yè)級應(yīng)用開發(fā)的首選平臺,時間證明了它在微軟SOA戰(zhàn)略中的基石地位。
國內(nèi)WCF的應(yīng)用正穩(wěn)步成長中,其中一些WCF技術(shù)先行者對廣大社區(qū)的帶動和推進(jìn)作用是不可忽略的。本書的作者蔣金楠(Artech)就是其中走在前面的一位。他在博客園中關(guān)于WCF的博文成為許多WCF開發(fā)人員的第一手學(xué)習(xí)資料。
這里還要說一個小故事。去年,和TerryLee還有武漢博文的編輯朋友一起小聚,其中談到技術(shù)寫作,我向兩位談了自己關(guān)于“WCF三部曲(應(yīng)用實(shí)踐篇、技術(shù)內(nèi)幕分析篇和擴(kuò)展篇)”的寫作計劃,編輯朋友告訴我已經(jīng)有作者在WCF上先期開始了,我馬上就猜到了是Artech。隨后通過TerryLee聯(lián)絡(luò)得知,Artech的書稿已經(jīng)完成近半了。
在拿到了Artech 新書的目錄稿后,基于我對Artech博文寫作的判斷,我大膽做了決定,暫時擱置自己WCF首篇的寫作計劃,轉(zhuǎn)而期待Artech新書的完稿。
直到最近看了Artech的整部書稿,通篇讀后的感覺,書如己出,不亞于當(dāng)年得知Don Box去了微軟負(fù)責(zé)Indigo架構(gòu)的消息時的感覺,事實(shí)證明,我當(dāng)時擱置寫作計劃的決定是正確的。知識全面、論述準(zhǔn)確、邏輯嚴(yán)密是本書的寫作特點(diǎn),這是一本各個層次開發(fā)人員都可以從中受益的書:對于WCF的初、中級開發(fā)人員,這本書可以幫助你獲得WCF全方位的知識,全面系統(tǒng)地梳理關(guān)于WCF知識結(jié)構(gòu),提升動手實(shí)施能力;對于WCF的高級開發(fā)人員,這本書既可以有效彌補(bǔ)你WCF知識結(jié)構(gòu)中的盲點(diǎn),又可以讓你在自己熟悉的知識點(diǎn)上領(lǐng)略作者的看法和理解。
當(dāng)然,讀完本書,也不是完全沒有疑惑,我最大的疑惑就是含有“卷1”字樣的書名,難道這又是一個暗示?暗示我又要考慮擱置我關(guān)于WCF三部曲后續(xù)兩篇的寫作計劃?抑或是可能的合作機(jī)會?我當(dāng)然希望是后者,不過無論是哪一個,顯然都是很值得我期待的!




















