文 / 劉如鴻
2000年對(duì)于微軟是頗有意思的一年,一方面終于邁入了21世紀(jì),擔(dān)心許久的千年蟲(chóng)問(wèn)題也沒(méi)有預(yù)想中的那樣大面積爆發(fā),通過(guò)Windows 95和Windows 98的成功,微軟在桌面電腦市場(chǎng)取得了絕對(duì)壟斷的地位。雖然官司不斷,但通過(guò)IE捆綁策略也終于徹底打敗了傲慢的Netscape,搭上了互聯(lián)網(wǎng)班車(chē)。而Windows 2000的發(fā)布也結(jié)束了Windows 98和Windows NT兩個(gè)平臺(tái)互不兼容、互相掐架的問(wèn)題,在全新的NT 5.0內(nèi)核上,服務(wù)器和客戶(hù)端操作系統(tǒng)終于得到了整合。至于辦公軟件領(lǐng)域,從Office 97之后已經(jīng)睨視宇內(nèi),Lotus Note已經(jīng)漸漸退出市場(chǎng),再也沒(méi)有了重量級(jí)的競(jìng)爭(zhēng)對(duì)手。
可在開(kāi)發(fā)工具領(lǐng)域,自從1998年發(fā)布Visual Studio 6.0之后,在語(yǔ)言的角度似乎已經(jīng)止步不前,鼓吹多年的COM技術(shù)依舊令人稱(chēng)垢,極高的開(kāi)發(fā)門(mén)檻加上本身的復(fù)雜性,使自家的VB始終不得其入。而在另一方面,1995年Sun公司推出的Java語(yǔ)言風(fēng)生水起,因?yàn)槠涑珜?dǎo)“一次編程,到處運(yùn)行”,加上面向?qū)ο?、垃圾回收、健壯性等諸多優(yōu)點(diǎn),使得這個(gè)原本用來(lái)開(kāi)發(fā)嵌入式設(shè)備和桌面應(yīng)用的語(yǔ)言反倒在服務(wù)器開(kāi)發(fā)領(lǐng)域異軍突起。
反觀(guān)微軟本身,雖然Visual Studio 6.0號(hào)稱(chēng)做到了同一開(kāi)發(fā)平臺(tái)可以編寫(xiě)多種語(yǔ)言,可實(shí)質(zhì)上只是不同語(yǔ)言、不同開(kāi)發(fā)工具的大雜燴,不同語(yǔ)言之間是彼此孤立的,如果說(shuō)和Java一樣,只是同樣做到了可視化開(kāi)發(fā),或許這就是Visual Studio的本意。
不管是出于進(jìn)軍中高端服務(wù)器市場(chǎng)的需要,還是對(duì)競(jìng)爭(zhēng)對(duì)手戰(zhàn)略防御的考慮,微軟都需要一個(gè)全新的開(kāi)發(fā)平臺(tái)來(lái)鎖定開(kāi)發(fā)人員,使其能夠在微軟的平臺(tái)上進(jìn)行開(kāi)發(fā)和提供服務(wù),這不是令人晦澀的COM或者COM+,也不是Anders初到微軟的作品WFC(可有多少人還記得當(dāng)年的Visual J++?),也不會(huì)是VC++,因?yàn)榱钊私^望的MFC讓大多人望而怯步,當(dāng)然也不會(huì)是VB,它無(wú)法勝任相對(duì)底層的應(yīng)用開(kāi)發(fā),當(dāng)然,更加沒(méi)有理由是Java平臺(tái),這不符合微軟一直以來(lái)的風(fēng)格。
Windows 2000推出之際,微軟提出了一個(gè)NGWG(下一代的Windows服務(wù))的愿景,除了作為市場(chǎng)宣傳的噱頭,一個(gè)模糊定位的概念并沒(méi)有做到讓多少人明白,對(duì)于當(dāng)時(shí)已經(jīng)全球領(lǐng)先的微軟而言,需要一個(gè)全新的、充滿(mǎn)想象力的平臺(tái)來(lái)延續(xù)他們的成功。
2000年,在那年的6月22號(hào),比爾·蓋茨向全球宣布其下一代軟件和服務(wù),即Microsoft .NET平臺(tái)的構(gòu)想和實(shí)施步驟。新一代的Microsoft .NET家族產(chǎn)品和技術(shù)替代了此前“下一代Windows服務(wù)(NGWS)”的提法,它涵蓋了幫助軟件開(kāi)發(fā)商構(gòu)建下一代互聯(lián)網(wǎng)服務(wù)和給予新一代智能互聯(lián)網(wǎng)設(shè)備強(qiáng)大功能的軟件。此外,微軟還宣布了基于.NET平臺(tái)的新產(chǎn)品計(jì)劃,其中包括新一代的微軟Windows操作系統(tǒng)、Windows DNA服務(wù)器、微軟Office、MSN互聯(lián)網(wǎng)網(wǎng)絡(luò)服務(wù)、Visual Studio開(kāi)發(fā)系統(tǒng)。
當(dāng)時(shí),許多人懷疑這是否是微軟一次市場(chǎng)宣傳的Buzz Word,微軟是否會(huì)在未來(lái)的十年乃至二十年堅(jiān)定地推進(jìn)他們構(gòu)筑的.NET戰(zhàn)略。2000年微軟的白皮書(shū)這樣定義.NET:Microsoft® .NET 是Microsoft XML Web Services平臺(tái)。XML Web Services允許應(yīng)用程序通過(guò)Internet進(jìn)行通信和共享數(shù)據(jù),而不管所采用的是哪種操作系統(tǒng)、設(shè)備或編程語(yǔ)言。Microsoft .NET 平臺(tái)提供創(chuàng)建XML Web Services并將這些服務(wù)集成在一起之所需。對(duì)個(gè)人用戶(hù)的好處是無(wú)縫的、吸引人的體驗(yàn)。
顯然,微軟把.NET戰(zhàn)略真正押寶在了XML Web Services之上,時(shí)隔十年之后,我們可能會(huì)說(shuō)當(dāng)初微軟的決策是極具遠(yuǎn)見(jiàn)和充滿(mǎn)想象力的,可在當(dāng)時(shí),孰是孰非誰(shuí)人定論。在平臺(tái)正式推出之前,為了推進(jìn).NET,微軟開(kāi)展了一場(chǎng)聲勢(shì)浩大的Dotnetination(.NET化)的運(yùn)動(dòng),幾乎所有傳統(tǒng)的、創(chuàng)新的、虛構(gòu)的產(chǎn)品統(tǒng)統(tǒng)打上了“.NET”標(biāo)簽,最典型的莫過(guò)于2000年底推出的.NET Enterprise Server,本質(zhì)上和.NET技術(shù)毫無(wú)關(guān)系,僅僅是因?yàn)檫@場(chǎng)聲勢(shì)浩大的宣傳運(yùn)動(dòng)中,需要這樣的鋪墊罷了。
不可否認(rèn),微軟在當(dāng)時(shí)過(guò)分“夸大”了.NET戰(zhàn)略,加之2001年推出的Windows XP并沒(méi)有.NET的影子,于是漸漸有人懷疑微軟用心不專(zhuān),是否在逐步地放棄當(dāng)初的信誓旦旦,所謂的.NET戰(zhàn)略只是水花鏡月。
2002年,一段時(shí)間的步履闌珊之后,2002年2月13號(hào)微軟正式發(fā)布了Visual Studio .NET 2002,其中包含了.NET Framework 1.0,除了引入一門(mén)全新的語(yǔ)言C#之外,同時(shí)提供了對(duì)于Java的支持。也有人懷疑過(guò)微軟當(dāng)時(shí)推出J#的意圖,現(xiàn)在看來(lái)不過(guò)是為了吸引更多的Java開(kāi)發(fā)人員轉(zhuǎn)投.NET懷抱罷了,而不是對(duì)于Java市場(chǎng)的有心經(jīng)營(yíng),這個(gè)在后來(lái)的Visual Studio版本也得到了證明。
作為一個(gè)全新的開(kāi)發(fā)平臺(tái),在語(yǔ)言方面,C#大量借鑒了Java的語(yǔ)法,同時(shí)保留了VB方面的諸多便利性。作為平臺(tái)的重頭戲ASP.NET,也傳承了微軟一直以來(lái)的可視化設(shè)計(jì)風(fēng)格,允許開(kāi)發(fā)人員以拖放方式開(kāi)發(fā)Web應(yīng)用,對(duì)于許多人來(lái)說(shuō)是極具吸引力的,于是逐步有開(kāi)發(fā)人員轉(zhuǎn)投.NET懷抱。尤其是隨著B(niǎo)orland的沒(méi)落,越來(lái)越多的Delphi開(kāi)發(fā)人員投向了.NET或者Java陣營(yíng)。而在開(kāi)發(fā)工具的支持上,.NET無(wú)疑是有巨大優(yōu)勢(shì)的。
可是.NET 1.0畢竟是全新的平臺(tái),許多類(lèi)庫(kù)是不成熟的。尤其是安全方面,如果反射看過(guò)當(dāng)時(shí)的.NET Framework源代碼,可以看到許多倉(cāng)促的痕跡。另外也繼承Windows一直以來(lái)的毛病,在7×24運(yùn)行的場(chǎng)景下,還是“不靠譜”了一點(diǎn)兒,雖然相對(duì)于COM,已經(jīng)好上許多,但依舊會(huì)出現(xiàn)一些“詭異”的場(chǎng)景。
2003年4月25日,曾被命名為Windows .NET Server的操作系統(tǒng)Windows Server 2003正式發(fā)布,同日發(fā)布了Visual Studio .NET 2003,并將.NET Framework的版本升級(jí)到了1.1.4322。這個(gè)四度易名的Windows操作系統(tǒng)內(nèi)置了.NET Framework 1.1,同時(shí)IIS的版本升級(jí)到了6.0。相對(duì)于當(dāng)初.NET戰(zhàn)略的喧囂,此時(shí)的微軟對(duì)于.NET已經(jīng)低調(diào)務(wù)實(shí)許多。除開(kāi)發(fā)工具本身,對(duì)于微軟而言,Windows Server 2003是一個(gè)非常重要的里程碑:一方面證實(shí)了Windows操作系統(tǒng)在企業(yè)級(jí)應(yīng)用的能力,一方面.NET終于完成了和Windows操作系統(tǒng)的無(wú)縫集成,也真正意義上為開(kāi)發(fā)人員提供了一套完整的.NET解決方案。
在這個(gè)版本的.NET Framework中,修正了大量1.0的Bug,性能和穩(wěn)定性也得到了比較大的提高,與此同時(shí)引入了手機(jī)應(yīng)用開(kāi)發(fā),包含了.NET Compact Framework。不管開(kāi)發(fā)桌面應(yīng)用,還是Web應(yīng)用,或者是手機(jī)設(shè)備的應(yīng)用,Visual Studio .NET提供了統(tǒng)一的開(kāi)發(fā)語(yǔ)言和開(kāi)發(fā)界面,使得開(kāi)發(fā)人員能夠在不同應(yīng)用開(kāi)發(fā)中自由切換。
隨著.NET Framework的穩(wěn)定,微軟內(nèi)部越來(lái)越多的產(chǎn)品采用.NET重新開(kāi)發(fā),或者提供了和.NET的無(wú)縫對(duì)接,這個(gè)也就是微軟一直強(qiáng)調(diào)的“Connected”。所有的軟件和產(chǎn)品都是可以互聯(lián)的,其中莫過(guò)于2003年發(fā)布的Exchange 2003、Office 2003以及2004年發(fā)布的Biztalk Server 2004,允許開(kāi)發(fā)人員使用.NET開(kāi)發(fā)應(yīng)用,并且做到了無(wú)縫集成。
在2003年拉斯維加斯的微軟開(kāi)發(fā)者大會(huì)上,微軟首次展示了開(kāi)發(fā)代號(hào)為“Whidbey”的下一代開(kāi)發(fā)工具。與此同時(shí)展示了開(kāi)發(fā)代號(hào)為“Yukon”的下一代數(shù)據(jù)庫(kù)服務(wù)器,也就是后來(lái)的SQL Server 2005。令人驚艷的遠(yuǎn)不止這些,還有開(kāi)發(fā)代號(hào)為“Longhorn”的下一代操作系統(tǒng),在這個(gè)全新的操作系統(tǒng)中,包含非常重要的幾個(gè)組件:
Avalon:圖形渲染引擎,全新的XML定義語(yǔ)言XAML,使其可以用類(lèi)似HTML的文本語(yǔ)言來(lái)定義界面,并提供了華麗的界面效果。
Indigo:通信子系統(tǒng),這是微軟為了解決異構(gòu)通信協(xié)議而設(shè)計(jì)的,旨在希望通過(guò)它幫助開(kāi)發(fā)人員以不同的方式提供服務(wù)和通信。
WinFS:文件子系統(tǒng),現(xiàn)在看來(lái),這是微軟一個(gè)美麗的謊言,也是微軟對(duì)于文件系統(tǒng)偉大的夢(mèng)想。據(jù)說(shuō)關(guān)于WinFS的概念設(shè)計(jì)早在2000年就被提出來(lái),并希望應(yīng)用于新一代的SQL Server。2003年雖然實(shí)現(xiàn)了技術(shù)原型,但終究因?yàn)闊o(wú)法克服的性能問(wèn)題,微軟不得不將計(jì)劃擱淺。
與此同時(shí),微軟承諾提供一個(gè).NET編程接口,叫著WinFX??梢舱菑倪@次大會(huì)開(kāi)始,微軟不斷跳票成了一種習(xí)慣。就如前面提到的,2004年之前微軟發(fā)布的大多產(chǎn)品,都是部分甚至全部采用.NET重寫(xiě),至少提供了開(kāi)發(fā)方面的無(wú)縫支持,也就意味著開(kāi)發(fā)人員可以使用C#或者VB.NET在微軟平臺(tái)上開(kāi)發(fā)所有的應(yīng)用。這里又不得不提Longhorn了,這個(gè)“長(zhǎng)角”的犀牛似乎有些吹牛不用本錢(qián),一次又一次地跳票,發(fā)布日始終無(wú)期,有消息說(shuō)Longhorn考慮過(guò)全部用.NET重寫(xiě),但這顯然是瘋狂、不切實(shí)際的想法。畢竟Windows的歷史包袱太過(guò)沉重,另外在沒(méi)有硬件支持的情況下,CLR運(yùn)行效率在針對(duì)系統(tǒng)級(jí)方面的開(kāi)發(fā)是否有性能問(wèn)題還是要打個(gè)問(wèn)號(hào)。
2005年,一切風(fēng)調(diào)雨順,兩年前PDC大會(huì)給眾多開(kāi)發(fā)人員吊足了胃口的Whidbey和Yukon,終于在2005年11月7號(hào)姍姍來(lái)遲。一直以.NET命名的Visual Studio換成了Visual Studio 2005,同時(shí)將.NET Framework的版本升級(jí)到2.0,在CLR底層引入了泛型,同時(shí)為了方便開(kāi)發(fā)人員,內(nèi)置了一個(gè)用于開(kāi)發(fā)調(diào)試的Web服務(wù)器,使得開(kāi)發(fā)人員在開(kāi)發(fā)過(guò)程可以更加方便地測(cè)試與部署。一般來(lái)說(shuō)微軟的產(chǎn)品到第三個(gè)版本才會(huì)穩(wěn)定下來(lái),.NET Framework也逃不過(guò)這個(gè)宿命。CLR并不是簡(jiǎn)單的類(lèi)庫(kù)方面的升級(jí),而是全新的CLR,相對(duì)于1.1版本,運(yùn)行效率和穩(wěn)定性都有了大幅度的提高。
在開(kāi)發(fā)方面,微軟第一次兜售自己的軟件開(kāi)發(fā)方法學(xué),Visual Studio為開(kāi)發(fā)人員提供了全套的解決方案,使開(kāi)發(fā)人員可以在不離開(kāi)IDE的情況下完成團(tuán)隊(duì)協(xié)作。而在類(lèi)庫(kù)方面,引入了Web Parts、Membership、Master Pages、Theme等多個(gè)能夠加快Web應(yīng)用開(kāi)發(fā)的技術(shù)。只是在這點(diǎn),微軟犯了一個(gè)不大不小的錯(cuò)誤。一直以來(lái)微軟開(kāi)發(fā)工具的設(shè)計(jì)原則是“拖放操作”,而ASP.NET 2.0的許多技術(shù)也正是契合這樣的設(shè)計(jì)思想,只是微軟依舊按照桌面開(kāi)發(fā)的設(shè)計(jì)思路去引導(dǎo)Web開(kāi)發(fā)。世界已經(jīng)改變,在瀏覽器市場(chǎng),由于微軟多年的不思進(jìn)取,F(xiàn)irefox被逐漸接受,同時(shí)隨著Web 2.0崛起,越來(lái)越多的網(wǎng)站設(shè)計(jì)師傾向于更加簡(jiǎn)潔的界面和更加豐富的用戶(hù)體驗(yàn),于是DIV+CSS和Ajax變得越來(lái)越流行。不管Web Parts也好,Membership也罷,雖然可以通過(guò)拖放很簡(jiǎn)單地完成一個(gè)業(yè)務(wù)功能,但是過(guò)于冗余的HTML生成加上自身模型的復(fù)雜,除了一些對(duì)性能和用戶(hù)體驗(yàn)要求不是很高的站點(diǎn),在Web開(kāi)發(fā)上,開(kāi)發(fā)人員更加愿意堅(jiān)持手寫(xiě)HTML和使用簡(jiǎn)單的“控件綁定”。因?yàn)樗麄兩钚盼ㄓ腥绱耍娇蓪?xiě)出符合Web 2.0風(fēng)格的Web應(yīng)用,而Visual Studio 2005能夠幫上的并不多,加上第一次集成了Visual Studio,開(kāi)發(fā)工具的性能并沒(méi)有得到很好的解決。不管如何,這是一個(gè)成功的Visual Studio版本。
同日發(fā)布的SQL Server 2005完全架構(gòu)在.NET之上,并允許開(kāi)發(fā)人員使用.NET編寫(xiě)存儲(chǔ)過(guò)程和函數(shù),并且因此了XML的數(shù)據(jù)類(lèi)型,同時(shí)支持.NET編寫(xiě)的用戶(hù)自定義類(lèi)型(UDT),在這個(gè)版本的數(shù)據(jù)庫(kù)上,.NET從之前的“Connected”變成了“Embed”。同時(shí)SQL Server 2005引入了激動(dòng)人心的SOAP支持,這就意味著可以直接將數(shù)據(jù)庫(kù)暴露成Web服務(wù),從而提供給應(yīng)用系統(tǒng)直接訪(fǎng)問(wèn),為了方便開(kāi)發(fā)人員進(jìn)一步基于SQL Server進(jìn)行開(kāi)發(fā)和管理,SQL Server 2005引入了全新的管理界面——SQL Server Management Studio,并且和Visual Studio 2005的界面一致。
2006年,Longhorn操作系統(tǒng)的一次又一次跳票,幾乎讓所有人都失去了耐心,為了撫平抱怨不斷的開(kāi)發(fā)者社區(qū),也是為了挽回些顏面,微軟將WPF(圖形渲染)、WCF(通信)、WF(工作流)和Windows Cardspace整合成代號(hào)為“WinFX”的.NET Framework 3.0,并于2006年11月6日發(fā)布。不過(guò)此WinFX并不是三年前提到的WinFX。不管如何,從某種程度來(lái)說(shuō),微軟在三年前的開(kāi)發(fā)者大會(huì)的承諾總算兌現(xiàn)了一部分,3.0并不是一個(gè)全新的.NET Framework,而是2.0的補(bǔ)充,之前提到過(guò)2.0在CLR層面脫胎換骨,但是在基礎(chǔ)類(lèi)庫(kù)上依舊比較薄弱,隨同2.0發(fā)布的許多新類(lèi)庫(kù)華而不實(shí),并無(wú)法對(duì)開(kāi)發(fā)者社區(qū)產(chǎn)生重大影響。而3.0的發(fā)布是對(duì)2.0框架的一個(gè)重要補(bǔ)充,它彌補(bǔ)了微軟在企業(yè)級(jí)開(kāi)發(fā)的軟肋。
同年Biztalk Server 2006發(fā)布,如同SQL Server 2005的做法,這是一個(gè)完全用.NET編寫(xiě)的企業(yè)級(jí)平臺(tái),也是完全支持.NET的開(kāi)發(fā)平臺(tái)。
2007年1月30日,在一次又一次的跳票之后,微軟終于全球發(fā)布了全新的操作系統(tǒng)——Windows Vista,或許是因?yàn)榈却颂?,所以期望很高,失望也就更大。我想更多的是因?yàn)椴粩嗵?,包括之前的過(guò)度許諾,加上對(duì)于硬件要求苛刻和驅(qū)動(dòng)的不兼容,從上市的第一天開(kāi)始Vista就惡評(píng)如潮。這個(gè)全新的操作系統(tǒng)理所當(dāng)然地沒(méi)有全部用.NET編寫(xiě),因?yàn)檫@本就是天方夜譚。因?yàn)橹T多的原因,大多企業(yè)并沒(méi)有選擇從XP遷移到Vista,而是持續(xù)觀(guān)望,等待下一個(gè)版本的Windows。本希望如Windows XP那般成功的Vista注定是一個(gè)過(guò)渡的操作系統(tǒng)。
2007年11月19號(hào),時(shí)隔.NET 3.0發(fā)布一年之后,微軟發(fā)布了Visual Studio 2008,隨同發(fā)布了.NET Framework 3.5。雖然在CLR上沒(méi)有改變,依舊是作為2.0的一個(gè)擴(kuò)展,但是在編程模型上,有了重大突破。如果說(shuō).NET之前都是處在追趕和模仿其他平臺(tái)的階段,那么3.5將是一個(gè)華麗轉(zhuǎn)身,Linq和XLinq為開(kāi)發(fā)人員帶來(lái)了激動(dòng)人心的編程體驗(yàn)。開(kāi)發(fā)人員可以混合對(duì)象與數(shù)據(jù),然后用同樣的查詢(xún)方式進(jìn)行數(shù)據(jù)處理,更重要的是允許開(kāi)發(fā)人員在任意環(huán)節(jié)進(jìn)行擴(kuò)展,許多Web 2.0網(wǎng)站或者開(kāi)源框架都提供了Linq for XXX的Provider,從而幫助開(kāi)發(fā)人員以一致的方式進(jìn)行數(shù)據(jù)處理。
同年Exchange 2007和Office 2007發(fā)布,在企業(yè)級(jí)辦公領(lǐng)域,微軟擁有越來(lái)越強(qiáng)的競(jìng)爭(zhēng)力,貫徹微軟一致以來(lái)的作風(fēng),.NET編程在服務(wù)器端和客戶(hù)端都得到了淋漓盡致的支持。
2008年2月,Windows Server 2008發(fā)布,隨同一起的有IIS 7.0。之前的IIS訪(fǎng)問(wèn).NET,都通過(guò)aspnet_isapi來(lái)轉(zhuǎn)發(fā)的,也就是說(shuō)并不是IIS天然支持ASP.NET,而直到IIS 7.0全新引入的管道模型,.NET終于成為Windows操作系統(tǒng)密不可分的一部分。
同年8月6號(hào)發(fā)布的SQL Server 2008,配套Windows Server 2008和Visual Studio 2008,立足于.NET技術(shù),構(gòu)成了完整的Windows應(yīng)用解決方案。八年時(shí)間,從一個(gè)模糊不清的概念到如今的無(wú)處不在,這家全球最偉大的軟件公司一直以來(lái)不遺余力地推進(jìn)它的.NET戰(zhàn)略。
翹動(dòng)未來(lái)的可能
經(jīng)過(guò)近十年的耕耘,微軟創(chuàng)造了一個(gè)全新的軟件開(kāi)發(fā)平臺(tái),其中有浮躁、挫折,更有銳意進(jìn)取。當(dāng)年的小伙子Scott早就掌管了微軟的開(kāi)發(fā)工具事業(yè)部,或許他個(gè)人的成長(zhǎng)歷程猶如.NET的成長(zhǎng),喧囂之后,云煙散盡,當(dāng)年的.NET夢(mèng)想已經(jīng)照進(jìn)現(xiàn)實(shí),可是否如微軟當(dāng)初預(yù)期的成功,外界很難明了。
不過(guò)有一點(diǎn)可以肯定,微軟通過(guò).NET戰(zhàn)略改變了軟件開(kāi)發(fā)格局,同樣也改變了微軟。這家以封閉保守著稱(chēng)的公司,一直以來(lái)對(duì)開(kāi)源世界嗤之以鼻,這個(gè)狀況從2005年之后逐步改觀(guān),畢竟開(kāi)放的微軟遠(yuǎn)比固執(zhí)的微軟更受歡迎。2006年5月啟動(dòng)的codeplex.com,是一個(gè)微軟擁抱開(kāi)放的重要標(biāo)志。除了社區(qū)上的開(kāi)源代碼,微軟也逐步地將一些內(nèi)部的產(chǎn)品開(kāi)源,著名的莫過(guò)于Enterprise Library和ASP.NET MVC,與此同時(shí)越來(lái)越多的開(kāi)發(fā)經(jīng)理和產(chǎn)品經(jīng)理開(kāi)始通過(guò)Blog和世界保持溝通。
臨即發(fā)布的Visual Studio 2010,也帶給了我們更多的期待,能夠堅(jiān)持十年去做一個(gè)事情已經(jīng)很難得,未來(lái)的路很長(zhǎng),對(duì)于微軟如此,對(duì)于開(kāi)源世界亦如此。而對(duì)于我們每一個(gè)人,我想用《程序員》雜志的“技術(shù)改變世界,創(chuàng)新驅(qū)動(dòng)中國(guó)”來(lái)作最后的總結(jié)。
有夢(mèng)想,就有可能。
作者簡(jiǎn)介:
劉如鴻,擅長(zhǎng)大型系統(tǒng)的架構(gòu)與互聯(lián)網(wǎng)產(chǎn)品設(shè)計(jì),目前為支付寶上海研發(fā)中心架構(gòu)師,專(zhuān)注于系統(tǒng)架構(gòu)設(shè)計(jì)。
(本文來(lái)自《程序員》雜志10年04期)
聯(lián)系客服