模板的工作原理可以簡單地分成兩個步驟:模板解析(翻譯)和數(shù)據(jù)渲染。這兩個步驟可分別部署在前端或后端來執(zhí)行。如果放在后端執(zhí)行,則是像Smarty,F(xiàn)reeMarker這樣的后端模板引擎,而如果放在前端來執(zhí)行,則是我們要探討的前端模板。

FreeMarker是一個模板引擎,一個基于模板生成文本輸出的通用工具,使用純Java編寫,模板用servlet提供的數(shù)據(jù)動態(tài)地生成 HTML,模板語言是強大的直觀的,編譯器速度快,輸出接近靜態(tài)HTML頁面的速度。這里不再對后端模版進行描述。

前端模版提高了前端開發(fā)的可維護性(后期改起來方便)以及可擴展性(想要增加功能,增加需求方便);提高了開發(fā)效率提高(程序邏輯組織更好,調試方便);最重要的一點就是:【視圖(包括展示渲染邏輯)與程序邏輯的分離】。好處是減輕服務器負擔,壞處是可能不利于seo以及模版錯誤不好調試。

當今前端模版主要有三類:

-String-based 模板技術 (基于字符串的parse和compile過程)
-Dom-based 模板技術 (基于Dom的link或compile過程)
-雜交的Living templating 技術 (基于字符串的parse 和 基于dom的compile過程)。

一.前端模版的演變

傳統(tǒng)的前端開發(fā)方式是通過通過ajax獲取數(shù)據(jù)進行繁瑣的數(shù)據(jù)渲染。隨著前端頁面的交互越來越繁雜,頁面無刷新的傳輸與頁面的顯然也越發(fā)的頻繁,導致頁面性能低下。即當前端從后臺通過ajax等方式獲取到數(shù)據(jù)更新后,都需要將這個數(shù)據(jù)渲染到指定的dom元素中,需要重新進行各種字符串拼接工作或者一系列創(chuàng)建元素的工作,這種方式是繁瑣且費時的。這種在可讀性和維護性上也存在問題。

基于字符串的模板引擎最大的功勞就是把你從大量的夾帶邏輯的字符串拼接中解放出來了,由于它的完全基于字符串的特性,它擁有一些無可替代的優(yōu)勢。如下的字符串拼接:

seo優(yōu)化培訓,網(wǎng)絡推廣培訓,網(wǎng)絡營銷培訓,SEM培訓,網(wǎng)絡優(yōu)化,在線營銷培訓

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設計培訓,網(wǎng)站建設培訓學習是年輕人改變自己的最好方式