Tangram for Internet Explorer

來源:互聯網
上載者:User
 

Tangram for Internet ExplorerTangram是一種使得軟體系統的UI架構與軟體系統實現“分離”的外掛程式技術,通過這種“分離”,軟體系統的UI可以在一定程度上獨立於軟體系統的設計,在設計環節中,其他軟體組件,例如COM、.NET組件可以自然的以外掛程式的形式融入目標軟體系統。……Tangram for Internet Explorer是Tangram技術與Internet Explorer結合的結果。從表現形式上看,Tangram for Internet Explorer相當於在IE的主體架構表單與HTML顯示視圖(瀏覽視圖)之間加入了一個UI層,與WPF等新技術不同,WPF將內容顯示在常規的之中,而Tangram for IE則將內容顯示在瀏覽視圖並列的空間之中,相當於在主架構中重建立立架構,而通常意義之下的瀏覽視圖則相當於新架構中的一個“View”。圖示如下:(通常意義下的瀏覽器)如顯示的是通常意義下的瀏覽器,瀏覽視圖佔據整個瀏覽器的使用者地區,如顯示一個與Tangram技術結合後的Internet Explorer運行時執行個體:

通常情況下的瀏覽視圖作為新架構中的一個“View”

在IE架構主體與瀏覽視圖之間新加入的UI層

(我們看到在瀏覽視圖與主架構之間插入了一個UI層)         在通常情況下,IE一般是將所瀏覽的目標顯示在瀏覽視圖之內,這一點形成了今天十分流行的“B/S”應用模式,流行的Web技術基本上都是圍繞這類開發展開的,目前幾個重要的RIA架構,例如Microsoft的WPF與Adobe的“Flex”等在瀏覽器方面的表現大都如此。IE是Microsoft提供的最基礎的瀏覽器架構,早在1997年IE4.0的時代,Microsoft就提供了針對IE架構的擴充技術,使得開發人員可以為IE提供自己的工具條、ExplorerBar對象,Microsoft為IE提供的自己的擴充項物件通常都表現為這種對象,即Band對象,Band對象在其他瀏覽器架構中被稱為“側邊欄”,許多流行的瀏覽器架構,例如FireFox、Maxthon等均提供了豐富的基於“側邊欄”的擴充技術,事實上,這方面Microsoft應該是最早提供的開發介面,但在IE中並沒有流行起來,相反卻成為其他瀏覽器架構的關鍵特徵,之所以如此,其原因是IE的ExplorerBar開發的門檻過高,使得許多開發人員望而卻步。最初Tangram的切入點是從這裡入手的。Tangram for IE的第一個關鍵特徵是為IE提供一個極為靈活的ExplorerBar“製作”系統,ExplorerBar(即其他瀏覽器中的側邊欄)可以為IE提供額外的UI以彌補IE預設架構的UI表現力,通常情況下IE提供的ExplorerBar如的菜單所示:(啟用的功能表項目列舉了通常情況下IE的ExplorerBar)一般說來,IE的ExplorerBar的開發需要很好的COM技術底蘊,而且絕大多數的ExplorerBar是基於C++架構開發的,由於介面比較複雜,因此,即使是熟練的C++開發人員也不能自如的駕馭這種Band技術架構,這一點是IE擴充技術的天然屏障。Tangram for IE通過XML技術為IE Band擴充提供了一個描述層,使得開發人員可以避開Band架構的底層技術細節進而直接構造自己的Band對象,這個描述層與開發人員所熟悉的開發語言基本是無關的,如所示:(通過Tangram技術,開發人員可以非常靈活的構造自己的表現力豐富的IE側邊欄系統)(具備左側、底部的雙側邊欄擴充)通常情況下,每個側邊欄對象都是一個Band對象,進而也是一個具備獨立標示的COM對象,每個這類對象都在特定的菜單上保留了一個位置,因此,傳統的IE Band擴充有一個明顯的缺陷,即當Band對象過多的時候,關聯的菜單結構會很複雜,Tangram架構提供了一個基於“Asynchronous Pluggable Protocol”的協議,通過這個協議,使用者可以通過在IE地址欄中輸入特定的URL載入特定的Band對象,這是Tangram中非常有趣的特徵之一,這個特徵對IE的一個明顯的改變是擴大了IE瀏覽對象的範圍,使得IE的左側、底部在一定意義下都變成了瀏覽地區,但與中心位置的瀏覽視圖不一樣的是,中心位置是瀏覽“建立在HTML基礎上的傳統Web內容以及新生的WPF等內容體系”,而左側、底部的“瀏覽”則是面向傳統的Win32/COM/.NET技術所開發的具有案頭軟體特徵的內容體系,這一點客觀上形成了案頭軟體內容與Web內容的自然結合體,使得基於IE的開發形成了獨特的“B/C/S”結構,當然,Tangram提供的“Asynchronous Pluggable Protocol”協議也是基於Internet方式的。         Tangram for IE的第二個關鍵的技術特徵是針對IE傳統用戶端區域提供的定製化描述方案。除了大量的基於Web開發工作形成的軟體內容之外,案頭軟體開發依然是軟體開發的一個十分巨大的市場,這一點是一個不爭的事實。如何將案頭軟體開發與基於瀏覽器的Web開發恰當的結合起來是一個關鍵的技術課題,Tangram for IE的另外一個思考點就是將“案頭軟體開發與Web開發自然的”結合在一起,基於這樣的考慮,Tangram致力於為IE提供一個靈活的UI架構,使得在IE架構內開發人員可以根據自己的需要將Web開發與案頭軟體開發靈活的結合在一起。由於IE架構固有的局限,IE的客戶區的中心位置被“瀏覽視圖”完全佔有,因此,現有的技術基本沒有能力解決IE客戶區中“瀏覽視圖”與開發人員提供的軟體架構共用的問題。如所示:(Tangram架構使得案頭軟體開發與IE的Web開發自然的融合在一起)通過基於XML的描述技術,案頭開發與Web開發可以共用IE的架構結構,這一點可以使得案頭軟體的優勢與Web軟體的優勢之間形成一種“平衡”,例如,大量的案頭應用可以自然的具備WWW功能,同時Web開發可以通過類似Ajax技術自然的與案頭軟體技術相互作用、結合。由於案頭軟體的複雜性,Tangram的IE定製化描述方案也是基於“Asynchronous Pluggable Protocol”協議實現的,這樣,每一個描述方案都自然對應一個URL,每個這樣的URL都相當於一個“個人化”IE的“副本”,同時也相當於一個“第三方瀏覽器”。從這個角度看,Tangram的這個特徵使得IE成為一個案頭軟體開發的“開發架構”,大量的Microsoft成熟的軟體技術都可以按照這個方式整合到IE架構之中。         Tangram for IE的一個關鍵的技術組件是一個“Asynchronous Pluggable Protocol”協議,這個協議有3個定向,分別是“left”、“bottom”、“client”,與大多數案頭軟體的流行結構比較,我們發現,大多數流行的案頭軟體的基本架構結構都存在類似的結構特徵。這個協議使得IE的基本輪廓結構發生了極為靈活的變化,同時也使得IE成為現在案頭軟體中最為靈活的一個軟體架構。與Microsoft最近的類似WPF技術不同,Tangram側重於軟體開發架構的構造,使得IE成為絕大多數案頭軟體開發的基本起點,是Tangram的最重要特徵。許多流行的技術大都是針對IE瀏覽地區的,Tangram則使得IE的瀏覽能力擴充到IE瀏覽地區的周圍以及其“並列”的空間,除了IE工具列之外的空間,Tangram都可以為IE提供新的軟體元素,使得傳統技術與新興技術之間找到自然的結合點。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.