微軟NET的最新版本NET Framework 為開發下一代業務解決方案軟件系統開啟了新的可能它的設計目標是提高生產力降低基礎設施復雜性提供一個一致的元系統讓企業級服務工作流解決方案和用戶體驗軟件系統的開發更容易
在我和大量的構架師討論的過程中我聽到解決方案構架師非常關心安全開放的標准互操作性面向服務的構架關鍵技術間的關系(例如Workflow Foundation和Biztalk)和生產力在這篇文章當中我將按照構架師社區最感興趣的領域來逐一介紹NET
NET的相關版本
自從微軟推出第一個版本的NET Framework已經過去差不多年了 是第一個隨操作系統發布的框架它附帶在每個Windows Vista中也可以支持Windows XP SP 和 Windows Server 直到NET 以前的每個版本的NET Framework都會伴隨著一個新的通用語言運行時(Common Language Runtime)後面將簡稱為CLR但這次微軟沒有修改NET Framework 版本中的CLR(譯者注而是基於NET 的CLR)這一點需要重點注意
由於NET 和共享同樣的CLR在NET 中編寫的任何程序都可以運行於NET 中這是和以前版本的一個重要而顯著的區別以改變來看對於那些喜歡代數方程的人來說它們之間的關系可以總結為下面的公式
NET = NET + WCF + WPF + WCS + WF
我會為每個縮寫提供一個定義不過當你任何時候對NET 和之間的關系感到困惑時只要記住上面的這個方程式就好了NET 其後的哲學之一就是提供一些功能讓基礎設施結構成為框架的一部分它讓你可以只關注你的關鍵的業務問題
NET Framework 通過個關鍵的以標准為基礎的支柱來對應我們客戶要求和驗證的領域以達成上述目標它也包含了一個重要的叫做XAML的新語言XAML是一個基於XML的聲明性語言通過XML定義對象和它們的屬性允許客戶聲明性地開發工作流(WF)和身臨其境的用戶體驗(WPF)讓我們來浏覽一下NET 框架中關鍵支柱的更詳細內容
Windows Communication Foundation (WCF)
WCF允許你通過提供一個基於標准的框架和一個組合的架構來構建服務WCF的個關鍵設計理念是互操作性生產力和面向服務的開發
微軟提供了若干個可以輕易添加和刪除的消息層通道和服務模型層行為你也可以定義自己的自定義實例比如你能編寫或者購買一個自定義ASCII編碼器把它作為可重用通道插入到消息層中讓多個系統都能使用WCF可以和現有的投資互操作並結合和擴展現存的微軟分布式系統技術如Enterprise ServicesSystemMessagingMicrosoft NET RemotingASMX和Web Services Extensions (WSE)這樣的改變預示著你能使用單一的模型來處理不同類型的應用程序行為這將顯著降低應用程序開發的復雜性通過支持WSI 基本概要(WSI Basic Profile)和大量的額外WS*標准WCF也提供和非微軟應用程序的互操作能力
最後從生產力來看使用WCF來開發安全的事務性網絡服務你將獲得生產力在級別上的顯著提高想想看要實現類似WCF的功能你需要開發生成和維護上萬行代碼而現在WCF卻已經作為基礎框架的一部分提供給你了WCF已經為你提供了一個首要的核心編程框架以應付逐步增長的面向服務的開發
Windows Workflow (WF)
Workflow Foundation是一個企業級工作流開發框架和引擎它首次把聲明性工作流引向主流WF支持有人參與的(Human)系統的(System)連續的(Sequential )和狀態機(StateMachine)工作流它提供了運行時基礎靈活的工作流控制機制長時間運行和狀態化工作流對用戶而言運行時和設計時的透明性以及用於規則遵從和記錄管理過程的審核能力
Workflow Foundation允許你把一個工作流定義為一系列的活動活動即是執行的單元並被允許輕易地進行重用和組合基本活動是在一個工作流裡面的一些步驟而組合活動可以包含其他活動你甚至可以在工作流已經處於運行過程中時添加和刪除活動這將使你在面對改變的時候具有巨大的靈活性Workflow Foundation提供了一個開箱即用的基礎活動庫以及一個讓合作伙伴和客戶容易創建自定義活動的框架
在創建方式的選擇方面你可以用純XAML標記標記加代碼或者純代碼Visual Studio Designer for Workflow Foundation作為一個插件程序已經可以下載了它提供了一個拖拽方式(draganddrop )的設計界面直觀的圖形工具並集成了屬性(Properties)窗口調試和圖形注釋功能
許多構架師曾向我詢問關於Workflow FoundationBiztalkMicrosoft Office SharePoint Server (MOSS )和Windows SharePoint Services (WSS)之間關系的問題
Workflow Foundation(WF)是由微軟開發Biztalk工作流引擎的同一個團隊開發的它傾向於被未來版本的Biztalk Server使用
WF提供了一個基礎用於實現在一個應用程序和在特定的情況下多個應用程序間的大部分工作流場景Biztalk允許你自動化你的業務過程通過適配器來編排由不同技術實現的系統所混合而成的過程並提供了高級的業務活動監控能力
對於MOSS 和WSSMOSS 構建於WF之上並使用WF作為基礎功能提供了額外的功能和特性Windows SharePoint Services作為Windows Server的添加項提供了一個MOSS 的功能子集簡言之WSS提供了簡單的文檔管理和工作流能力
Windows Presentation Foundation (WPF)
Windows Presentation Foundation試圖彌合在游戲和娛樂產業中常見的身臨其境的用戶體驗和在業務軟件世界中靜態又難用的界面之間的差距WPF利用XAML讓你無需成為圖形設計師就能盡情地開發下一代界面
我建議你去看一個WPF應用程序的演示來理解我指的下一代用戶界面是什麼意思例如你可以查看一下收藏於不列顛圖書館裡面的大最珍貴圖書其中包括了莫扎特和達芬奇的手稿這個閱讀器是一個基於WPF的應用程序運行在Internet Explorer浏覽器中就是指所謂的XBAP(可擴展浏覽器應用程序)——這是一個用於代替浏覽器中的ActiveX功能的技術WPF的重要不同之處是它不是一個最終產品或者一個美妙的豐富界面而是一種開發和維護應用程序代碼的方式
從構架的角度看WPF通過分離圖形元素和業務邏輯來保持一個非常清晰的劃分一個設計師可以使用Expression產品線和XAML來創建視圖而開發人員可以使用Visual Studio和VBNET或C#來編寫代碼
近來另外一個需要更多關注的技術是WPF Everywhere(WPF/E)它現在的官方名字叫SilverLight請記住SilverLight不是NET 框架的一部分SilverLight是一個具有自己運行時的跨浏覽器跨平台的插件它用於開發下一代微軟基於NET的多媒體程序和豐富交互的Web應用程序你能在中找到更多信息並觀看一些演示
Windows Card Spaces (WCS)
在今天的世界中每個人都攜帶著大量的自我聲明和第三方頒發的身份標識身份標識的例子包括駕駛證信用卡電影卡和其他類似的卡
我們把這些由自己控制的信息提供給請求方來證明我們的身份Windows Card Spaces把用戶控制的這個概念擴展到了數字世界WCS創建了一個身份標識元系統能顯著改善在組織內部和組織之間的企業身份管理的方式為了理解它的潛力一位微軟著名的評論家指出這是自加密技術出現以來對計算機安全最重要的貢獻之一
在數字世界身份標識被表述為對象(誰)身份要求和安全令牌(對象和要求的數字表示)WCS使用自我聲明和托管兩種概念的身份標識一個自我聲明的數字身份標識卡可以用於登陸類似Hotmail這樣的服務而托管的身份標識可能是一個由銀行頒發的信用卡
下面的圖片描述了被用於在不同的實體當中交換信息的協議請記住在這個例子當中身份提供者能使用KerberosX或一個自定義的機制類似的中轉方可以用SAML或者使用HTTPS post來發送安全令牌
WCS為不同的身份標識管理技術實現提供了一個總體的框架以讓它們共同工作在Java One(世界上最大的Java會議)上Sun和微軟做了一個聯合主題演示了基於WS*標准的互操作機制我會把這個演示的鏈接和工具包貼到我在此文結束時提到的博客中
結論
NET Framework為構架師和開發人員開啟了一個具有無限可能的新世界它旨在讓你開發集成和維護應用程序更加容易微軟計劃在NET Framework未來的版本中繼續推行這樣的理念來降低基礎設施結構復雜性並同時提高互操作性和標准支持關於支持標准的完整列表和本文中描述的各個主題的詳細資源可以訪問和點擊NET 分類來獲取
From:http://tw.wingwit.com/Article/program/net/201311/13868.html