成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

Windows 8:昔日Windows Longhorn的新生

瀏覽:126日期:2023-06-30 13:38:03

微軟投下一個重磅炸彈,新的Windows 8將啟用身臨其境的友好接觸方式,而所用的開發(fā)平臺不再基于過去十年微軟一直倡導的.NET。相反,它將使用HTML5和JavaScript,此后,該公司也沒有在這個問題上作出進一步的回應。尤其,這個問題已引起很多Windows開發(fā)人員的特別關注-----怎樣才能將現(xiàn)有的技能和經(jīng)驗用在這些新開發(fā)應用的上?直到九月會議之前,該公司仍然沒有透露任何信息。

然而情況可能不會像許多開發(fā)商擔心的那樣嚴峻。早期里程碑版本的Windows8已經(jīng)泄露到互聯(lián)網(wǎng),并已有人投入相當大的努力去弄清楚他們是如何工作的。盡管官方守口如瓶,但仍然有部分信息透露。到目前為止,Windows 8的發(fā)展似乎還順利,有跡象表明,它實際上會編寫Windows軟件來解決許多長期存在的隱患。如果微軟可以解決這一切問題,希望它能夠完成這一平臺,Windows8將作為Windows Longhorn的一個重要改進版本。

歷史的點滴

當我們看到微軟為Win8所做的一切之前,我們先了解一些背景。首先我們要清楚一些過去的事實。在此之前,.NET在2002年推出,Windows應用程序主要有兩種方式:“大的應用,認為辦公室應用軟件中的Photoshop, Netscape 和Navigator中,往往使用的是Win32 API編寫和C++。 Win32是一個大的API,它涵蓋了許多內(nèi)容。“顯而易見的東西很多,如圖形和用戶界面的創(chuàng)建,網(wǎng)絡通信和文件系統(tǒng)的訪問,也有許多深奧的東西像創(chuàng)建備份,網(wǎng)絡配置和安全性。

它很龐大,而且做了很多工作,但也有一些重要的事情,它做得并不是很好,有些東西它并沒有真正的去做。例如,盡管它包含了數(shù)據(jù)庫訪問的幾個API,但實際上,它是使用純的WIN32編寫應用程序來使用的數(shù)據(jù)庫很多,也很繁瑣。更甚者,即使它擁有所有你需要組建的一個基本GUI工具,但使用起來十分不易。

例如,它不給你任何幫助來設定用戶界面。文本框和工具欄的每個按鈕必須由開發(fā)者來定位。如果你想在你放大窗口時改變位置,那么所有步驟都必須由你自己來完成。許多圖書館采用它作為開發(fā),力圖使工作變得更加容易,包括微軟自己的MFC層,但你常常不得不使用從Win32鉆研得到的東西來工作。

另外一個編寫Windows應用程序的主要方式是Visual Basic,使用Visual Basic來完成一些任務很容易。尤其是涉及到數(shù)據(jù)庫和創(chuàng)建用戶界面,它已成為商業(yè)世界的基礎。有許多商業(yè)應用程序?qū)?shù)據(jù)庫里的一些數(shù)據(jù)顯示給用戶,給用戶一個表格,讓他們添加數(shù)據(jù)。在完成這些任務時,Visual Basic是出色的。它很少直接調(diào)用Win32函數(shù)的支持,特別是那些依賴于Win32的某些結(jié)構(gòu)。

Visual Basic也缺乏支持流行的面向?qū)ο蟮氖纠?,僅僅是“基于對象。

.NET的出現(xiàn),改變了這一切。.NET給開發(fā)人員對Visual Basic的易用性很大,但并沒有Visual Basic中規(guī)定的妥協(xié)。與Visual Basic相似,它已構(gòu)建了良好的用戶交談界面,數(shù)據(jù)庫工具,因此突出了它對商業(yè)應用的編寫。但是,與Visual Basic不同,如果稍有麻煩,它也很容易訪問Win32。但該平臺也獲得了業(yè)務發(fā)展的迅速牽引,一些新的商業(yè)項目也在用它。

Longhorn的夢想

Windows XP公布.NET的前一年,毫無疑問沒有使用該技術。但由于微軟2003年10月在PDC上宣布,這是因為改變了Windows Longhorn所做的發(fā)布, Longhorn中集成.NET為核心的Windows平臺。.NET FX,因為它在公司(以“FX的“框架地位)將讓位給WinFX,作為Windows框架相同的技術基礎。除此之外,這將包括一個用于編寫用戶界面,代號為Avalon的徹底現(xiàn)代化,基于矢量和硬件加速的全新方式。 Windows本身會使用WinFX的方案,用戶可見的程序如資源管理器,計算器等等。展望未來,用.NET的方式來編寫Windows應用程序,雖然仍然存在Win32兼容,但將會凍結(jié),靜態(tài)。

Longhorn是結(jié)束一直編寫Windows程序的老路子,一個現(xiàn)代化的Windows開發(fā)是新時代的曙光,這就是一個十年或十五年之前無法實現(xiàn)的決定計劃。

正如我們所知道的,Longhorn從未發(fā)行。該項目增長巨大,使得它難以管理,以及破壞。同時,Windows XP是基于Longhorn的。被黑客侵襲時,微軟傾注了Windows XP和Windows Server2003的安全性。大多數(shù)情況下,使用Windows XP Service Pack 2和Windows Server 2003的Service Pack 1,更多的利用其資源,開始它的下一代操作系統(tǒng)的發(fā)展,最終以Windows Vista作為發(fā)行,從新開始。

.NET是發(fā)展重啟的最大的輸家之一。 Windows Vista雖然在某些方面激進,但放棄了整個“WinFX的的概念。Avalon沒有發(fā)行,現(xiàn)在已知的是Windows Presentation Foundation(WPF),但只作為一個附加的作業(yè)系統(tǒng),而不是已知的核心部分,.NET代碼在Windows Vista和Windows 7上唯一重要的一塊是媒體中心(這甚至不使用WPF)。其他的都是普通老版的Win32。更重要的是,在Win32 API本身進行了更新和擴展。許多底層特征的增加和支持GUI的改變,如Windows Vista的任務欄縮略圖和Aero玻璃主題,且分別加入到Win32。這些GUI的變化,特別是WPF都沒有很好地配合。

導致這一決定的因素是它的部分只是為了私利,沒有時間重寫所有使用的.NET。但也許是更大的因素是在微軟內(nèi)部的分歧。 Windows是來自Windows部門(WinDiv),.NET來自開發(fā)部(DevDiv),而這又是服務器和工具業(yè)務的一部分。盡管人們可能認為這些團隊和他們的目標一致,但是情況并非如此。并沒有任何惡意,只是表示,各有不同的觀點。

分裂發(fā)展

這些重點的當時一些感覺,例如WPF,只能使用.NET程序,它也只能在C#和Visual Basic.NET上編寫。且整個API內(nèi)部都是限制本地的C++程序,需要作出更多的努力,使他遷移現(xiàn)有程序使用WPF。當未來的發(fā)展對使用.NET有價值時,這是有道理的。但是當這一計劃改變和本地代碼恢復作為首選的開發(fā)環(huán)境中的位置,這是一個很大的問題。微軟不能使用純凈的,基于矢量的,與分辨率無關,硬件加速,WPF庫可生成任何核心操作系統(tǒng)的應用程序。

其他的重點則是一個簡單的結(jié)果,卻有著小組不同目的。因此,例如,DevDiv的首要任務是使.NET成為一個可信的開發(fā)平臺;這意味著增加新的核心功能,開發(fā)庫和工具,如Silverlight工具。 WinDiv的重點是上述C ++的兼容性,穩(wěn)定性,并解決一些技術問題。所有的目標是合理的,但由于DevDiv沒有回答WinDiv,沒有那么多的考慮到WinDiv的事情。其結(jié)果是,WinDiv的管理對.NET不滿意,并忽略了它。

.NET的后續(xù)版本情況有所改善,與所有的C++問題現(xiàn)已解決。雖然WinDiv,與DevDiv不滿忽視了它的工作,正如Windows7,只有媒體中心使用.NET。Windows 7新的API都是原生C++的API,沒有.NET程序。和本機C + +程序訪問仍然沒有進入到一個與分辨率無關,基于矢量的,硬件加速構(gòu)建用戶界面的框架。

相關文章: