線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1413
推到 Plurk!
推到 Facebook!

.NET 技術漫談專欄

 
ATEIN
高階會員


發表:105
回覆:320
積分:125
註冊:2002-07-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-02-18 12:22:47 IP:203.204.xxx.xxx 未訂閱
.NET 技術漫談專欄: 初探 Avalon 發展介面 作者:李匡正 (台灣微軟應用架構技術經理)    2005 年 2 月    Microsoft 於 2005 年 1 月 14 日首次公佈了下一代 Windows 作業系統 "Longhorn" 所使用之圖形使用者介面 ( GUI ) "Avalon" 之 SDK,事實上早於 2004 年 11 月,微軟便已在 MSDN 會員的網站上公開了 Avalon 社群技術預覽版 ( Avalon Community Technology Preview ) 和 WinFX SDK。經過近兩個月的整理,終於開放公開下載,以便讓開發人員即早暸解未來視窗環境使用者介面的技術走向。此次預覽版本,包含了 Avalon 範例程式,命令列編譯器(Command Line Compiler)與除錯器,以及 WinFX 及 Avalon 基礎環境。在此特別強調,技術預覽版本有助於實際體驗微軟最新技術趨勢,但卻不適合評斷產品成熟度與穩定性。    現今 Windows 的 GDI ( Graphic Device Interface ) 應用程式發展介面,源自於 16 位元視窗環境的年代,用以透通多樣化之繪圖硬體設備而提供之 2D 繪圖引擎,GDI 是 C 語言為標準介面的動態連結程式庫 ( DLL ),至今已經超過十年未有重大改版,隨著科技日新月異近年來已漸不敷使用,於是 32 位元版本之 GDI 以及 DirectX、Direct3D、GDI+ 等各項新技術陸續推出,以彌補 GDI 功能之不足。但疊床架屋的解決方案,亦成為視窗系統的包袱。此外,平價 64 位元個人電腦逐步擴增市場影響力,諸多繪圖發展介面移植與相容性問題隨之而生,微軟於下一代作業系統 "Longhorn" 中決定重新設計 GUI 介面,以符合運算功能與顯示能力愈趨強大個人電腦。代碼 Avalon 的圖形子系統 ( Graphics Subsystem ) 便是未來新一代視窗 GUI 應用程式發展介面 ( API ) 標準,亦是微軟的重要策略技術之一。    "Avalon" 的設計理念,環繞於下列四項主軸     Web 應用程式與視窗應用程式採用相同開發理念  同時整合使用者介面,文件與多媒體內容展現  具備彈性、運用 .NET 技術之應用程式架構 ( Application Framework )  善用個人電腦強大圖形運算能力     Web 應用程式與視窗應用程式採用相同開發理念 以 Web 瀏覽器為基礎之相關應用,已經成功進入人類的日常生活,並且逐漸取代傳統平面媒體,Web 應用之成功,HTML 將圖形使用者介面與程式碼清楚切割,使得不具備軟體開技術之美工專業人員,得以運用友善而簡易之排版工具與影像處理軟體,製作出精美、專業,並具備傳統平面媒體相同閱讀習慣之使用者介面。傳統視窗軟體開發,卻難以將使用者介面,交由美工專業人員處理。    Avalon 中提供了以 XML 延伸而來的 XAML 標籤 ( Tag ) 語言,成為定義使用者介面與表達文件內容的主要方式,XAML ( 讀音 "Zammel" ) 可以直接運用於 Web 應用程式與視窗應用程式展現內容與使用者介面,或是類似 ASP.NET 般 Code Behind 方式結合 .NET 環境內的程式語言,如此便可將 XAML 交由美工人員設計,而程式碼部分由開發人員負責,以現今 Web 應用程式分工方式來開發視窗應用程式。以 XAML [程式碼一] 為例,藉助單純標籤即可產生可供 Internet Explorer 與視窗共用之文件內容。     <Heading OutlineLevel="1">Heading Level 1</Heading> <Heading OutlineLevel="2">Heading Level 2</Heading> <Heading OutlineLevel="3">Heading Level 3</Heading> <Heading OutlineLevel="4">Heading Level 4</Heading> <Heading OutlineLevel="5">Heading Level 5</Heading> <Heading OutlineLevel="6">Heading Level 6</Heading> <Heading OutlineLevel="7">Heading Level 7</Heading> [程式碼一] 圖 1 以視窗型態展現 圖 2 以瀏覽器型態展現 當您單純使用 XAML 展現文件與介面時,一旦 XAML 檔案被修改;使用者介面亦隨之改變,可享有如 HTML 般的便捷,倘若不希望 XAML 內容被隨意篡改與暴露程式碼邏輯,亦可將 XAML 編譯於可 management code 執行檔內,成為獨立之視窗應用程式。 同時整合使用者介面,文件與多媒體內容展現 XAML 理念並非微軟所獨創的,在 XAML 問世之前,Mozilla 組織訂定 XUL 與 Macromedia® 公司產品 Flex 中都有著相同的概念,但是由於 XAML 與視窗作業系統緊密結合,得以融合需要高效能運算之 3D 動畫能力,也藉此展現出極為驚人之視覺效果。Avalon 封裝了 DirectX、Direct3D 等高速繪圖介面,因而可以輕鬆展現具備 3D 效果之使用者介面,亦可以將 3D 物件自由移動和旋轉,或隨意改變光源位置與強弱。非常適合展現圖文並茂之多媒體內容,以及具備極為炫目之使用者介面。 圖 3 以 XAML 表達結合 3D 動畫效果之使用者介面 具備彈性、運用 .NET 技術之應用程式架構 ( Application Framework ) Avalon 應用程式發展介面構築與 WinFX 之上, WinFX 是替代現行 Win32 API 的新一代視窗應用程式發展介面 ( API )。 WinFX 實際上便是運用 .NET 技術,以 Managed Code 重新定義視窗環境標準 API。由 "Longhorn" 所釋放出的訊息我們可以得知,在不久的未來,Win32 API 以及封裝 Win32 API 的 MFC ( Microsoft Foundation Classes)、ActiveX 控制項等相關技術,都將進入維護階段逐漸淡出視窗軟體開發的舞台。Avalon 相當於 WinFX的GUI 模組。未來 Avalon 與 WinFX 也將會提供 Windows XP 及 Windows Server 2003 版本,以便應用程式提供與 "Longhorn" 一致之使用者介面。 善用個人電腦強大圖形運算能力 以 HTML 為基礎之 Web 應用架構,無須為軟體佈署傷神,版本更新成本低,並且易於在各種平台執行,諸多優點人盡皆知。但是無法於網路中斷環境下獨立進行作業、使用者介面與操作方式有限,亦未善用個人電腦的運算資源,對於現今高效能個人電腦而言是一種資源的浪費,Avalon 期望簡化視窗使用者介面開發,並充分發揮個人電腦能力,將 Smart Client 技術趨勢更易與視窗平台整合。 未來展望 Avalon 距離正式上市仍有一段時間,XAML 語法與 WinFX Framework 皆有可能大幅度異動,微軟於 2004 年四月份即對 W3C ( World Wide Web Consortium ) 展示 XAML 技術與 Avalon 開發模式,期望外界對 Avalon 能有正確的認知,Avalon 出現不代表 DirectX、Direct3D 等 API與 unmanaged code 可執行檔程式將完全消失,可以預料強調效率的遊戲軟體、3D 動畫軟體、電腦輔助設計軟體 ( CAD ) 仍會使用低階繪圖 API 進行開發工作,但絕大多數的視窗應用程式使用者介面,將隨著 Avalon 出現而變的更為豐富與簡便。 相關資料下載 Avalon Community Technology Preview 下載 http://www.microsoft.com/downloads/details.aspx?familyid=C8F904E1-B4CA-402B-ACCF-AAA2BD60DA74&displaylang=en WinFX SDK http://winfx.msdn.microsoft.com/ Visual Studio 2005 Developer Center http://lab.msdn.microsoft.com/vs2005/default.aspx DHM
------
ATEIN
系統時間:2024-05-13 21:12:06
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!