熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

.NET Framework 3.0 框架慨述

2013-11-13 10:20:01  來源: .NET編程 
本文將簡要介紹微軟NET 在與以前的版本進行比較的同時著重強調NET 的一些新特征

  在微軟首次發行了一個稱為NET 的產品的測試版本其時NET 作為一個類框架回答了開發者社區特別是Java社區向微軟提出的問題當時人們認為微軟已經跟不上形勢甚至有些落後於時代了結果NET框架的上市使許多人為之歎服如今大量的開發者都在積極地湧向NET的懷抱

  現在在幾年之後NET框架的第三個版本又要出現在眾人面前這個緊緊與Windows Vista的發行綁定到一起的發行版本將是一個相當成熟的框架這個新式框架的側重點在於進一步拓寬NET方案的應用范圍但是就象其前一個版本一樣NET 仍然是龐大而復雜

   NET x及版本的區別

  NET x和 NET框架存在一些不同之處前兩個框架專注於允許眾多不同的語言與同一類庫CLR進行通訊CLRNET 中開始引入並在NET 中得到增強它基於一個相對簡單的概念進行工作通用語言運行時刻模型能夠執行任何運行NET框架的系統中的代碼這對於每一位開發人員意味著他們不再需要不斷地再學習針對不同技術的語言例如一個Windows表單應用程序的C#開發者可以把他的這種構建表單的知識用來編寫web頁面同樣一個Visual BasicNET開發者能夠在編寫移動應用程序與編寫web服務之間順利切換由CLR擔當一個仲裁者並實現相應的通訊

  NET框架版本在通用語言運行時刻方面並沒有改進許多人對微軟在這方面進行指責但是我認為沒有必要在每次發行中都要對CLR進行改進這個新發行的框架的重點在於拓寬這種語言的技術吸引力

  有關擴展NET框架方面已經在以前的發行版本中進行演示了前兩個框架發行中推出了使用ASPNET構建web應用程序的新的方法隨著 NET框架一同發行的移動NET版本使得開發人員更為容易地構建智能手機及其它智能設備應用程序這些框架的設計中總是提供給開發人員極大的可擴展性展示了NET 框架的棧式結構



NET 框架結構

  NET 框架並沒有對現有技術作進一步的改進而是引入了四種基本的新技術

  · Windows描述基礎(WPF)

  · Windows通信基礎(WCF)

  · Windows工作流基礎(WWF)

  · Windows CardSpace(WCS)

  這其中的每一種技術都將成為開發者用來實施新方案的奠基石

   Windows描述基礎

  Windows描述基礎(WPF)無可爭辯地成為以上四個新式基礎類集中最為有名的這主要是由於下面兩點

  · 你最終只能看到一種WPF方案

  · 人們經常把WPF與Adobe的Flash進行比較

  ASPNET在NET框架的前兩個版本發行期間引起了許多開發者的重視因為你能夠清晰地了解你在使用什麼工具進行開發同樣WPF也提供了一種一致的方案來構建編程模型並且支持使用更為豐富的控件和設計技術來開發Windows程序一個開發出來的WPF程序最終能夠被發行到桌面Web以及智能設備上

  WPF的一個有趣的方面就是新式的名為XAML的XML標准編程語言利用它能夠控制對象的布局正是這種語言導致了與Flash之間的比較從表面上看二者極為相似但是實際上WPF與Flash之間存在相當的不同Flash是一個成熟的可控制的獨立於操作系統的封閉式框架而相比之下WPF允許你與操作系統及其它NET框架技術進行集成Flash和WPF其實是兩種非常不同的技術二者服務於不同的市場需求但又存在一些邊緣交叉

  WPF已經提供了一些工具使你用來構建方案其中微軟的Expression系列工具就包含了一些新的設計工具它們允許你創建演示程序網站以及交互式描述

   Windows通信基礎

  Windows通信基礎(WCF)的核心目的是允許程序與同一台計算機或網絡上的或跨越互聯網的其它程序實現通訊WCF編程模型把web服務NET遠程技術分布式事務和消息隊列統一到單個面向服務的編程模型中從而實現真正意義上的分布式計算

  WCF的設計在於順應面向服務的架構原則以支持分布式計算在這種環境中服務為消費者所使用客戶可以同時消費多個服務並且同一個服務能夠為多個客戶同時消費典型地服務都會提供一個WSDL接口任何WCF客戶端都能夠使用該接口來消費該服務而根本不用慮及該服務所宿主的平台WCF實現了許多高級web服務標准例如WS尋址WS可靠性和WS安全性盡管微軟是Web服務互操作性組織(WSI)的成員之一但是問題至今還不明朗到底微軟會全面支持多少WSI規范

   Windows工作流基礎

  Windows工作流基礎(WWF)是一種定義執行和管理工作流的微軟技術工作流由一系列的活動組成開發者能夠編寫他們自己的域特定的活動然後把它們應用於工作流中NET框架/Windows工作流基礎還提供了一組涉及若干控制流構建方面的通用目的的活動

  Windows工作流基礎中還包括了Visual Studio 擴展這些擴展包含一個允許用戶設計工作流的可視化工作流設計器一個支持用戶調試工作流的可視化調試器還有一個支持用戶在Visual Studio 內編譯工作流的工程系統

  注意你可以在Windows SharePoint Server Portal的發行中看到一個有關於WWF的早期的示例程序

   Windows CardSpace

  你是誰?這是一個經常需要解決的問題而且也是一個令開發者每天都頭疼的問題當前我們已經擁有了例如活動目錄通行證和Windows會員服務等方案我們能夠通過這些技術並借助於用戶名和口令來標識某個人目前這些方案中存在的問題在於它們實質上相當松散而且安全性差你會經常聽到有人能夠共享用戶名和口令嗎?即使當這種情況發生時你也根本不知道到底被認證的人是誰

  如今新的Windows CardSpace在這個問題上提供了一種新的解決方案不同於以前在管理安全方面的嘗試現在微軟使用CardSpace采取了一種大膽的步驟從而實現了一種幾乎是全新的嘗試向微軟以外的安全專家咨詢安全究竟是什麼樣的?

  回答很簡單任何用戶都能夠創建並且共享他的或她的唯一的身份Windows CardSpace是這種新方案的微軟版本好消息是CardSpace工作在與其它公司所開發的相同的原則基礎上微軟可能是第一個但是許多公司也都是基於這一技術的例如微軟已經發行了展示把CardSpace集成到一個PHP應用程序中的示例代碼(僅有行)

  CardSpace及相應的新式支持技術將改變你到一個應用程序的認證方式不管這個程序是基於Web你的手機或你的桌面程序這一服務將會真正幫助弄清楚你是誰而不是由你自己宣稱你是誰在保護用戶數據的私有性方面這的確是一個好東西

   構建NET 解決方案

  你可能已經預料到構建NET 解決方案的主要工具就是Visual StudioVisual Studio的下一個發行版本其當前相應的CTP代碼名為Orcas預計將於年發行除了開發工具之外一組新的支持Windows描述基礎的設計器工具(冠以名稱Expression)正在發行中

  總的來看微軟在NET 背後儲存了大量能量我估計在年將會發行或宣布許多精品工具

   集成Vista與Windows XP

  請牢記這一點NET框架並非操作系統本身這個看上去非常明顯的結論卻隨著Windows XP的發行被淡忘了許多到目前為止Windows XP已經成為利用NET框架技術的占優勢的桌面OSNET x和都被設計可以運行於Windows XP之上一個容易被人們忽視的一點就是NET框架並沒有被綁定到某一個操作系統NET x和都可以運行於Windows 和Windows /R之上你所要做的就是利用該框架開發出一個能夠運行於多個系統上的應用程序

  挑戰在於作為一個開發者利用非特定於OS的框架類進行開發可能是極具誘惑力的這一點已經從許多Windows應用程序中得到證實這些程序宣稱支持NET框架但是其實卻利用了Windows XP特定的工具從而使其應用程序僅能運行於一個操作系統之上事實證明這裡所推薦的許多混合方案無法運行於Windows 操作系統上

  NET 類似前一個框架的一個地方就是它能夠運行於多個操作系統例如Windows XPWindows /R和Windows Vista等之上到目前為止我還未曾聽到有關於針對Windows 或任何其它Windows操作系統發行NET 的任何討論

   進一步挖掘NET 寶藏

  就象微軟所有以前的NET框架發行版本一樣當前發行的版本也是重量級的因此界時市面上將會出現了許多的有關於介紹每一種基礎的書籍當然還會伴隨成百上千篇的文章這都是將來的事情今天有關這方面的消息仍然相當缺乏而且難於捕捉不過最值得參考的幾個地方有MSDN以及針對NET 的官方新聞站點

  Windows描述基礎第一次為設計者提供了一種方案允許其直接與開發者進行交互如以往一樣開發者還是首先需要進一步學習大量的新技術最後NET 提供了一組基礎類用於實現通信與工作流的集成另外Windows CardSpace所提供的新的認證方案還有待於商界通過顧客敏感的數據去進一步驗證

  請睜大你的眼睛用你的智慧去擁抱新的NET 其中存在許多十分緊迫的技術等待你去進行嚴肅地分析當然最好的辦法還是通過試用它來更好地理解NET 並進而確定如何使用它來構建更佳的方案


From:http://tw.wingwit.com/Article/program/net/201311/13261.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.