色婷婷国产精品免费网站_av在线官网_色综合色综合_欧美精品一区二区三区蜜桃视频_成人免费视频观看视频_国产午夜精品一区二区三区视频

17站長網(wǎng)

17站長網(wǎng) 首頁 編程 ASP.NET 查看內(nèi)容

asp模板引擎終結者(WEB開發(fā)之ASP模式)

2022-10-25 18:51| 查看: 2414 |來源: 互聯(lián)網(wǎng)

闡述一種全新的ASP模板引擎,實現(xiàn)代碼(邏輯)層與HTML(表現(xiàn))層的分離.這種模板實現(xiàn)方法避免了一 般ASP模板加載模板文件(加載組件)和替換所浪費的資源,實現(xiàn)編譯型的 ...
闡述一種全新的ASP模板引擎,實現(xiàn)代碼(邏輯)層與HTML(表現(xiàn))層的分離.這種模板實現(xiàn)方法避免了一 般ASP模板加載模板文件(加載組件)和替換所浪費的資源,實現(xiàn)編譯型的模板引擎,提高程序的執(zhí)行速度和穩(wěn)定性。

內(nèi)容:
        當前,WEB開發(fā)已經(jīng)變得非常火爆,因為各種應用,已經(jīng)約來越要求表現(xiàn)層和邏輯層的分離.ASP和HTML夾在一起程序將變得難于維護,可讀性也差。在PHP領域,模板引擎已經(jīng)非常普遍,如phplib,SMARTY,等等.有使用替換方式的,也有編譯方式的(SMARTY),它們都較好的實現(xiàn)了邏輯層和表現(xiàn)層的分離.由于PHP的影響,在ASP界有人借鑒phplib等使用替換的方法開發(fā)出asp的模板類,由于ASP在字符處理上性能并不是很強大,所以在速度上受到影響,這樣的模板在目前的應用也不是很廣泛。如:

1<!--template.html-->
2<html>
3<head>
4<title>{$title}</title>
5</head>
6<body>
7{$body}
8</body>
9</html>


1<!--Template.asp-->
2<%
3TemplateCode=Load("template.html")'自定義函數(shù),裝載模板文件到TemplateCode
4TemplateCode=Replace(TemplateCode,"{$title}","asp模板引擎終結者")'替換模板
5TemplateCode=Replace(TemplateCode,"{$body}","asp模板引擎終結者內(nèi)容")'替換模板
6Response.Write TemplateCode
7%>

       上面的例子只是初步展示了當前ASP模板的思想,有ASP版的CMS系統(tǒng)已經(jīng)嵌入了對模板的邏輯控制,雖然能夠實現(xiàn)邏輯和界面的分離,但是這種模板存在的問題就是模板需要每次都用ASP解析一次,程序相當于解析兩次,而且當要替換的內(nèi)容很多的時候,將會降低性能.而且裝載模板需要服務器支持一種組件(FSO,ADODB,XMLHTTP均可實現(xiàn)).
  借鑒于編譯型的模板,我在ASP中引進這種思路.提出一種應用在ASP中的功能和性能都很優(yōu)良的模板體系.下面用代碼表示:

 1 <!--template.html-->
 2 <html>
 3 <head>
 4 <title><%=title%></title>
 5 </head>
 6 <body>
 7 <!--<%
 8 'If邏輯控制,當然這里對于FOR,While 循環(huán)也一樣處理,是不是覺得很簡單呢,
 9 '對邏輯進行html注釋,在DW(Dreamweaver)下就不會應為邏輯控制的asp占位符產(chǎn)生變形,對于其他的變量將顯示一個asp標記,便于修改
10 IF Catalog="music" Then
11 %>-->
12 <%=music%>
13 <!--<%Else%>-->
14 <%=book%>
15 <!--<%End If%>-->
16 </body>
17 </html>


1 <!--Template.asp-->
2 <%
3 title="asp模板引擎終結者"
4 Catalog="music"
5 music="音樂"
6 book=""
7 %>
8 <!--#include file="template.html"-->

思路:asp文件進行常規(guī)的邏輯處理,運算,不用管顯示層,當然需要顯示的變量需要和顯示層結合(PHP也一樣),在模板文件中用<%%>直接控制變量的顯示和邏輯的控制,不顯示的邏輯控制符用html注釋符<!---->注釋掉,當然,不注釋也是可以的.這樣在ASP文件的最后"<!--#include file="template.html"-->"就實現(xiàn)了模板和ASP文件的結合,實現(xiàn)了代碼和表現(xiàn)層的分離,這里并沒有用ASP去Load模板,然后替換,浪費不必要ASP資源.這些處理全部都省去了。你會發(fā)現(xiàn)寫ASP文件變得更加方便,因為你再也不需要在其中控制替換,邏輯顯示的行為。在ASP中直接執(zhí)行肯定比替換要來得迅速和穩(wěn)定.況且,加載模板的時候你必須還要加載一個組件.
         寫到這里,你也許明白了這種模板的精髓了,它只是一種設計模式,不是一個用模板類來處理的模板引擎。

tag標簽:asp asp模板
本文最后更新于 2022-10-25 18:51,某些文章具有時效性,若有錯誤或已失效,請在網(wǎng)站留言或聯(lián)系站長:17tui@17tui.com
·END·
站長網(wǎng)微信號:w17tui,關注站長、創(chuàng)業(yè)、關注互聯(lián)網(wǎng)人 - 互聯(lián)網(wǎng)創(chuàng)業(yè)者營銷服務中心

免責聲明:本站部分文章和圖片均來自用戶投稿和網(wǎng)絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業(yè)用途,如果損害了您的權利,請聯(lián)系我們及時修正或刪除。謝謝!

17站長網(wǎng)微信二維碼

始終以前瞻性的眼光聚焦站長、創(chuàng)業(yè)、互聯(lián)網(wǎng)等領域,為您提供最新最全的互聯(lián)網(wǎng)資訊,幫助站長轉型升級,為互聯(lián)網(wǎng)創(chuàng)業(yè)者提供更加優(yōu)質(zhì)的創(chuàng)業(yè)信息和品牌營銷服務,與站長一起進步!讓互聯(lián)網(wǎng)創(chuàng)業(yè)者不再孤獨!

掃一掃,關注站長網(wǎng)微信

大家都在看

    熱門排行

      最近更新

        返回頂部
        主站蜘蛛池模板: 蜜臀av性久久久久av蜜臀妖精 | 理论片中文字幕 | 国产一级免费视频 | 亚洲欧美日本在线 | 一级片观看| 国产农村女人一级毛片 | 日韩欧美色 | 永久免费看片在线播放 | 日本免费毛片 | 精品久久久久久久久久久久久久久久 | 美国特色黄a大片 | 欧美日韩高清在线 | 免费激情网站 | 国产黄色在线 | 天堂中文字幕免费一区 | 欧美日韩一区二区在线观看 | 亚洲成在线 | 欧美三级 欧美一级 | 国产一区二区视频在线观看 | 黄色片久久| 亚洲一区在线视频 | 97免费在线 | 日韩图色| 欧美一级淫片免费视频黄 | 久久99国产精品 | 在线观看欧美日韩视频 | 午夜精品在线观看 | 久久久国产精品视频 | 中文字幕av在线 | 国产视频网| 欧美日韩综合在线 | 国产视频网 | www.国产精品.com | 色天天综合| 日韩精品网站 | 91在线一区二区 | www.国产精品 | 亚洲综合精品 | 中文字幕亚洲一区 | 亚洲精品网站在线观看 | 日韩精品在线免费观看 |