国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

.NET vs Java

2019-11-18 14:50:12
字體:
來源:轉載
供稿:網友

  從信息孤島的pc機到主機/啞終端、客戶/主機模式到多層中間件分布計算,直到今天的網絡web服務,計算機應用可能性的邊界不斷擴展。今天已經沒有人懷疑互聯網的巨大力量,互聯網正日益取代單一操作系統成為新的開發平臺。時勢造英雄,社會一旦有需要,將比十所大學更能夠實現技術的突破。意欲實現互聯網無縫應用的多種努力在2001年浮出水面:sun的one環境、HP的e-Speak、微軟推出.NET戰略。微軟的.NET戰略無疑更是2001年世界IT界的一個hot issue。sun與微軟在眾多IT領域都可謂兩個不同陣營的旗手,因此對于開發人員而言,在新的一波技術浪潮撲面而來時,選擇微軟還是sun公司無疑是一個需要慎重權衡的選擇。

  一、構建開放互聯網

  構建無縫互聯網應用所面臨的根本問題在于,互聯網環境下操作系統以及應用邏輯開發工具沒有統一標準,于是首先產生了操作系統與開發工具的選擇問題;其次、幾乎所有開發都要依靠函數庫或者說組件的調用,微軟WFC以及COM、java的Javabean,都是開發人員熟悉的函數庫。隨著網絡應用的發展,各廠商將傳統組件技術發展,如微軟DCOM、sun的RML等,以適應客戶/主機局域網環境。但在更加開放的互聯網環境又出現了新的問題,在互聯網環境中,組件調用處于一個高度彈性的環境,現有的組件框架缺乏版本治理功能造成組件版本沖突, windows環境中所謂的dll hell問題就是一個顯例,則無疑增加開發成本降低開發效率。

  試圖統一操作系統存在很大難度,比較之下在應用邏輯開發層次實現開發工具的無縫連接,是互聯網環境下構建無縫應用更現實的途徑。實現開發工具的統一可以有不同的思路:一是所有開發都采用同一種開發語言而獲得互聯網環境的無縫應用;這同使用一種操作系統一樣不太現實。二是對不同操作系統平臺,通過“中間代碼”實現不同開發語言的跨平臺無縫集成。Java就是該思路的產物。三是在不同主流開發語言的基本語義要素諸如數據表達方式、函數調用之間建立統一的轉換規則,在一個平臺上實現不同開發語言的無縫集成。微軟.NET框架就是這種思路的產物。很明顯,后兩者之間差別很大。.NET很難認為是一種開放框架。 二、技術比較

  .NET的主要特性有: 
      1、自描述組件。傳統組件不能在互聯網環境中無縫應用的一個根本原因是,組件本身沒有包含在網絡環境下必須的信息,比如組件版本信息(作者、建立時間、權限等);基于角色的安全檢查特征等。.NET引入自描述組件,簡化了怨聲載道的COM組件復雜開發過程,納入網絡環境所要求的信息,因此不再需要系統注冊,只需拷貝在指定目錄下即可,實現了Java的同樣特性。另外提供了一些組件新特性如reflection,減少組件開發的代碼編寫量。答應不同組件間的手動配置,配置信息以與語言無關的xml標準保存。

  2、Microsoft Intermidled Language(MSIL)。類似Java虛擬機跨平臺機制,實現不同主流語言之間基本語義要素在windows平臺上的翻譯

  3、跨平臺運行庫。通過MSIL以及soap、scl、disco、wdsl一系列協議,.NET定義了一套跨平臺的運行庫。C++使用的MFC、Java使用的WFC、vb使用的VBAPI都統一在一個框架下。在windows環境下開發時,程序員只需考慮自身偏好選擇開發工具。

  4、asp。即asp的提升,以VB7代替腳本語言Vbscript,編程更自然,功能更強大,安全性更高。可以將多種組件直接應用于Html界面,并提供了網絡環境下實現特定服務的組件如進程自動治理組件,內置xml。已有測試表明,ASP+平均性能較ASP提高了3倍,而最重要的是軟件開發效率大大提高,成本下降。

  .NET具備了Java的大多數精華特性比如內存自動治理特性。但是,.NET僅僅在windows平臺實現web集成應用,其他操作系統被排斥在外。對于Java而言,雖然具備跨平臺特性但要求所有的開發者都使用一種開發語言以實現互聯網應用的開放性,似乎也難以做到。令人注重的是..NET框架中的c#,與Java 比較,兩者都是c語言的發展,語法格式十分近似,微軟試圖以此吸引一批Java開發者向..NET框架的轉移。微軟在市場份額上占有優勢,Java也擁有大批追隨者,誰將是互聯網計算模式的最終贏家,只能拭目以待。 三、結語

  .NET的推出,是互聯網無縫應用的一大突破。但是,微軟最終的意圖是明顯的,企圖在互聯網時代在更高層次上實現對市場份額的控制。微軟一貫的老大作風已給世人深刻印象,從操作系統、數據庫、辦公軟件、瀏覽器乃至網絡音頻新壓縮格式WMA,微軟似乎無處不在,互聯網計算也不會例外。微軟已公布在其Windows xp中不再支持Java,雖然根據sun與微軟協議,微軟還擁有7年時間使用Java。

  客觀地說,微軟是最具實力擔當實現互聯網環境統一計算模式的廠商之一。.NET戰略事實上是微軟面對來自linux為代表的自由軟件以及Java為代表的跨平臺編程語言的壓力而做出的回應。IDG數據顯示,Linux在服務器份額正逐漸逼近微軟Windows,前者為27%,后者41%,而前者增長速度快于后者;業界主要廠商對Linux應用的支持也有目共睹。Linux上應用的日益豐富,必然對微軟日益構成威脅。為了與Linux抗衡,微軟開始對python等自由軟件進行有限支持;答應其戰略合作伙伴查看微軟代碼,但依然將最終修改權把握在自己手中。

  微軟面臨擁抱互聯網開放與維持其壟斷利潤的抉擇或者說尋求一種平衡。開放是計算機發展的巨大動力,微軟的自身利益只能在一個開放的環境中才能夠得到維系發展。計算機發展史上不乏封閉壟斷走向式微消失的大公司,王安就是前車之鑒。2001年3月,Borland發布了Delphi在Linux下的RAD工具Kylix,將使得大約80%NT應用移植到Linux平臺;其他平臺應用模擬自由軟件諸如Lin4win、vware等也對windows應用構成一定壓力。或許微軟在.NET中已經埋下競爭的下一步伏筆,.NET雖然目前局限在微軟平臺上,但其采用的底層協議是標準通用協議,假如競爭格局需要時,從微軟平臺擴展到其他平臺并非難事。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 温泉县| 洛扎县| 麻江县| 芒康县| 津南区| 荆州市| 晋中市| 绥宁县| 周口市| 徐水县| 南澳县| 华池县| 高碑店市| 将乐县| 平顺县| 壤塘县| 陆丰市| 望城县| 乳山市| 卓资县| 吉首市| 集安市| 镇安县| 临武县| 宁武县| 盘锦市| 梅州市| 安丘市| 曲松县| 会东县| 化隆| 阿拉善右旗| 稻城县| 内乡县| 珠海市| 交口县| 孙吴县| 桑植县| 鹿邑县| 玉山县| 醴陵市|