動易SiteFactory版模板處理方案與2006比對(1)
動易 SiteFactory 系統(tǒng)中采用的模板處理方案,與之前的06版比較起來,是一套全新設(shè)計(jì)的、基于成熟的XML+XSLT技術(shù)、用戶可完全自主控制的方案。本方案充分釋放了站長對自己網(wǎng)站的風(fēng)格、代碼習(xí)慣、數(shù)據(jù)來源的掌控權(quán)。制作網(wǎng)站時,站長們無需再像老版本系統(tǒng)中那樣受制于內(nèi)置標(biāo)簽對格式的限制,可以自主創(chuàng)建任意風(fēng)格的代碼結(jié)構(gòu)。從而使自己的站點(diǎn)的表現(xiàn)更加自由活躍。下面,筆者就從不同的著眼點(diǎn)出發(fā),一一對這兩個版本的特點(diǎn)做出比較。
一 模板流程概述:
06版中的模板引擎,解析流程如下圖所示:
該引擎的特點(diǎn)是,標(biāo)簽處理過程內(nèi)置,使用簡單,但效果單一,雖然系統(tǒng)已經(jīng)盡可能多的提供了各種參數(shù)來控制輸出樣式,但畢竟數(shù)量有限,從而影響了網(wǎng)站的表現(xiàn)力和應(yīng)用范圍。
動易 SiteFactory 則完全重構(gòu)了這個部分,流程圖如下:
從圖中可以看出,動易 SiteFactory 與06版在模板引擎流程上面的巨大區(qū)別。工作平臺從 ASP 轉(zhuǎn)換到了.NET并引入了多層開發(fā)概念的動易 SiteFactory 版,實(shí)際上已經(jīng)演化成了一個多種數(shù)據(jù)源的綜合處理系統(tǒng)。
二 標(biāo)簽樣式:
06版延續(xù)使用了動易首創(chuàng)的“函數(shù)式標(biāo)簽系統(tǒng)”,基本結(jié)構(gòu)如下:
{$labelname(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10}
像這種樣式的函數(shù)標(biāo)簽,提供很多參數(shù),方便了站長取得不同的列表內(nèi)容,但它也有一個弱點(diǎn),就是每一個參數(shù)的功能、順序位置和參數(shù)的數(shù)量,在編輯模板時,都必須嚴(yán)格按照規(guī)則輸入,不允許有任何的錯誤。
動易 SiteFactory 中的標(biāo)簽樣式則改用了符合 XML 規(guī)范的參數(shù)形式,基本結(jié)構(gòu)如下:
{$pe id=”labelname” titlelen=”10” tip=”true” conlen=”50” classid=”10” target=”_blank” /}
當(dāng)所有的參數(shù)都不需要特意指定,使用默認(rèn)值時,您也可寫成:
{$pe id=”labelname”/}
或者
{$pe titlelen=”10” tip=”true” conlen=”50” id=”labelname”/}
可以看出,動易 SiteFactory 標(biāo)簽樣式在實(shí)用性和容錯性上,比06版是大有改善了吧。
三 標(biāo)簽定義:
06版:沒什么好說的,系統(tǒng)標(biāo)簽全部都是固化在組件里,雖然用戶可以通過自定義動態(tài)標(biāo)簽,和自定義函數(shù)標(biāo)簽來定制一些獨(dú)特的效果,但畢竟功能有限。
動易 SiteFactory :徹底的開放式自定義標(biāo)簽環(huán)境,標(biāo)簽名稱、標(biāo)簽參數(shù)、數(shù)據(jù)來源、內(nèi)容模板全部都開放給網(wǎng)站制作者進(jìn)行自定義,使用戶可以自主控制標(biāo)簽輸出的每一行代碼。
四 模板存儲方式:
06版:頁面模板以字符串形式存儲在數(shù)據(jù)庫內(nèi)。
動易 SiteFactory :頁面模板以文件形式存放在硬盤里,用戶可通過直接上傳的方式進(jìn)行模版的編輯和修改,既方便了使用本地編輯器的用戶,備份和管理工作相對06版也更加直觀和清晰。
通過對網(wǎng)站模版路徑的設(shè)置,可以很方便的對網(wǎng)站整體風(fēng)格進(jìn)行轉(zhuǎn)換
五 模板編輯器:
06版本的模板編輯,使用了可視化的在線編輯器,通過右鍵的快捷方式,可以快速的編輯和修改模板和標(biāo)簽代碼,但這種編輯器有一個重大的弱點(diǎn),就是不夠規(guī)范,它經(jīng)常會自作主張的修改用戶輸入的源代碼,使其不能符合用戶的要求,舉個簡單的小例子:
比如,您輸入的標(biāo)準(zhǔn) HTML 代碼為
經(jīng)過編輯器的分析,它會自動修改為
這種修改會導(dǎo)致整個頁面不能通過 HTML 規(guī)范的檢查。
動易 SiteFactory 在這方面做出了一定的改變,考慮到用戶對輸出代碼的絕對控制權(quán),我們放棄了使用在線的可視化編輯器進(jìn)行模板和標(biāo)簽編輯,轉(zhuǎn)而使用純粹的在線代碼編輯器+本地可視化編輯工具相結(jié)合的方案,用戶可以使用 DW 或其他任何軟件,在本地編輯出滿意的模板文件后,直接上傳到網(wǎng)站后臺進(jìn)行一下標(biāo)簽添加,就可以使用這個模板了。
各位可能會想,后臺添加標(biāo)簽如果是在源碼方式下,操作很麻煩,還要輸入標(biāo)簽的各種參數(shù),工作量也不會小的。
實(shí)際上無須擔(dān)心,動易已經(jīng)為我們考慮了這個問題,后臺雖然是在源碼狀態(tài)編輯的,但象06版一樣,動易 SiteFactory 依舊提供了可視化的標(biāo)簽編輯器和拖放式的操作,最大限度的簡化了模板編輯的難度。
六 數(shù)據(jù)源:
06版:只能使用主數(shù)據(jù)庫里面的限定的表,即便是使用動態(tài)標(biāo)簽技術(shù),也無法脫離主數(shù)據(jù)庫的范圍。
動易 SiteFactory :數(shù)據(jù)源的多樣化,可以說是動易 SiteFactory 的重點(diǎn)功能之一,脫離了系統(tǒng)數(shù)據(jù)庫的限制,網(wǎng)站管理人員可以對使用任意數(shù)據(jù)庫的系統(tǒng)進(jìn)行數(shù)據(jù)整合,而無須對方提供數(shù)據(jù)接口,通過對多種不同系統(tǒng)數(shù)據(jù)源的整理,用戶可以把自己的網(wǎng)站建設(shè)成一個綜合信息查看系統(tǒng)。
舉個例子來說,很多企業(yè)內(nèi)部網(wǎng)絡(luò)上運(yùn)行著不同數(shù)據(jù)庫構(gòu)成的各種應(yīng)用系統(tǒng),比如 OA 系統(tǒng)、質(zhì)量信息管理系統(tǒng)、設(shè)備管理系統(tǒng)等等,通過動易 SiteFactory 的多數(shù)據(jù)源讀取功能,我們可以將這些系統(tǒng)中的大部分信息讀入到網(wǎng)站系統(tǒng)里,處理后輸出到同一個頁面。這樣,網(wǎng)站用戶就可以通過網(wǎng)站中統(tǒng)一的界面對這些數(shù)據(jù)進(jìn)行查看,而不必依次登陸到各個系統(tǒng)中去,簡化了管理人員對數(shù)據(jù)的閱覽方式,提高了效率。
七 分頁:
06版:只有在允許分頁的頁面里,使用分頁標(biāo)簽進(jìn)行分頁,且分頁樣式單一,只有中英文各一種標(biāo)簽,用戶不能自行修改標(biāo)簽樣式。
動易 SiteFactory :引用了類似于 VS2005 開發(fā)工具提供的分頁概念,任意頁面中,只要添加一個分頁標(biāo)簽,并為其指定數(shù)據(jù)源標(biāo)簽,就可以實(shí)現(xiàn)頁面分頁,在同一頁面中,用戶還可以添加其他不同樣式的分頁標(biāo)簽,它們都可以正常工作,且互不干擾。
通過 Ajax 技術(shù),動易 SiteFactory 還實(shí)現(xiàn)了同一頁面多分頁標(biāo)簽并存的效果,甚至可以進(jìn)行分頁標(biāo)簽的嵌套顯示。同時,每個分頁的樣式都可以在后臺自行選擇和編輯,可以這樣說,動易 SiteFactory 的分頁功能,在同類系統(tǒng)中達(dá)到了一個史無前例的新高度。
下圖是動易 SiteFactory 實(shí)現(xiàn)的同頁面多分頁標(biāo)簽并存的示例,其中紅框標(biāo)出的分頁標(biāo)簽都能對自己的數(shù)據(jù)源標(biāo)簽進(jìn)行分頁,且互不干擾:
八 可編程:
06版:不存在編程的問題,模板中只能使用 JavaScript 代碼,而不能使用其他任何的服務(wù)器端程序語言,這成了二次開發(fā)最大的屏障。
動易 SiteFactory :標(biāo)簽?zāi)0蹇梢允褂?C#、VB、JavaScript 和標(biāo)準(zhǔn)的 XSLT 語句,對數(shù)據(jù)進(jìn)行處理輸出,下圖中就是同時在標(biāo)簽編輯器里使用三種不同程序語言的示例:
動易 SiteFactory 的程序編輯,還注重了方便快捷,我們提供了很多常用的內(nèi)置方法,最大程度的簡化了編程的難度:
九 標(biāo)準(zhǔn)化
06版:使用動易自創(chuàng)的標(biāo)簽樣式,和循環(huán)處理格式,對于非動易用戶來說,需要進(jìn)行專門的學(xué)習(xí)才可以使用。
動易 SiteFactory :標(biāo)簽樣式引入了 XML 規(guī)范,屬性命名清晰,無須查找用戶手冊即可準(zhǔn)確的知道標(biāo)簽中每一個參數(shù)的功能和作用。標(biāo)簽編輯語法嚴(yán)格符合 XSLT 規(guī)范,由于 XSLT 是 W3C 確認(rèn)的國際規(guī)范,用戶無須對動易系統(tǒng)進(jìn)行特殊學(xué)習(xí),即可上手使用。即便用戶需要重新學(xué)習(xí) XSLT 語法,也不會造成知識的浪費(fèi),學(xué)會了 XSLT,也就等于掌握了一門可以通行于 XML 世界的技能,而非動易專有的知識,開發(fā)人員即便脫離動易系統(tǒng),這種技能依舊可以發(fā)揮重要的作用。
十 結(jié)束語
總的來說,動易 SiteFactory 使用的模板處理方案相對于06版,是一個比較大的飛躍,我們秉承著“自由,開放”的原則開發(fā)的這款引擎,將引導(dǎo) CMS 行業(yè)的整體設(shè)計(jì)概念發(fā)生轉(zhuǎn)換,從簡單的網(wǎng)站管理系統(tǒng),進(jìn)化為多功能、高性能的數(shù)據(jù)綜合顯示系統(tǒng)。
用戶登錄
還沒有賬號?
立即注冊