程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> DotNetNuke Skinning Whitepaper(總攬部分)

DotNetNuke Skinning Whitepaper(總攬部分)

編輯:關於ASP.NET

DotNetNuke崇尚簡單原則,簡單在不同的應用領域有不同的解釋,在DotNetNuke中,我們的目標是使復雜的皮膚體系有一個人性化的表現——在使用和管理上簡易方便。另外,性能是任何web應用程序的一個關鍵的問題,因此,我們在這個標准中多次強調這一點。好消息是在DotNetNuke 的皮膚體系中兼具優越的性能和簡易性,這在一些案例中已經被證明。

在底層技術上,ASP.NET用戶控件明顯優越於模版管理。因為用戶控件是經過編譯的,這在性能上明顯高於解釋型語言。從後台編碼的業務邏輯中提取表現層也是一個關鍵的特點。

為了使創建皮膚對web設計者來說盡可能的簡單而且靈活,我們決定使用純粹的HTML來定義皮膚。這樣做的好處是設計者可以使用他們習慣的工具來創建和維護皮膚。我們定義了一些占位符來將皮膚對象從靜態標記中分離出來,設計者可以在設計完成後插入到他們的皮膚中。占位符就是如[TOKEN] 一樣的簡單文本,它和皮膚對象是一一對應的。為了減輕在替換過程中的性能損失,我們建立了一套簡單的皮膚上傳機制來進行這種替換生成可以直接由DotNetNuke表現出來的用戶控件。這個預處理僅在皮膚上傳過程中執行一次。這個方法讓我們享受用戶控件在性能上的優勢而且滿足了web設計者與web開發者獨立開發的需求。

在布局方面,DotNetNuke允許皮膚設計者自由的組織他們想要的頁面布局。為了將內容模塊插入頁面,設計者可以創建任意數量的可以放置模塊的內容欄。這種自由的方法提供了在界面設計上的靈活性,但同時也在無縫集成即插即用的皮膚系統上增加了一定的復雜性。為了達到真正的即插即用,每個皮膚的布局,名稱,內容欄的數量必須是協調的。

大多數皮膚解決方案都存在一個弱點,那就是皮膚組件總是去定義他自己的布局和外觀表現。在DotNetNuke 中,內容模塊向這種體系提出了強有力的挑戰,通過復雜的內容模塊和大量的函數來表達一個單一的控件,使得控件至少包含了一部分布局特性。這就嚴格限制了他的使用,必須依賴於皮膚的指定區域 ( 比如他可以僅被插入到一個大的皮膚欄目中)。更糟糕的是如果一個內容模塊包含靜態的文字,顏色,圖片或者樣式,這就更限制了他在皮膚解決方案中的作用。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved