因此,在我接觸那麼多種語言當中,asp是最不嚴格的一種,是對程序員要求最低的一種。
昨天測試了asp.net、php和asp的運行速度比較,今天又來沖動,想看看定義變量與不定義變量對asp運行效率的影響有多大,結果令人驚訝,asp程序定義變量比不定義變量速度快一倍!
測試程序還是昨天那個,運行一千萬次for循環,獲得執行時間。
1、程序沒有定義變量(dim i) 復制代碼 代碼如下:
<%
dim startime
startime=timer()
for i = 1 to 10000000
next
dim endtime
endtime=timer()
response.Write "頁面執行時間:" & FormatNumber((endtime-startime)*1000,3) & "毫秒"
%>
2、程序定義了變量(dim i) 復制代碼 代碼如下:
<%
dim i
dim startime
startime=timer()
for i = 1 to 10000000
next
dim endtime
endtime=timer()
response.Write "頁面執行時間:" & FormatNumber((endtime-startime)*1000,3) & "毫秒"
%>
程序各執行5次(第一次執行除外),然後取平均值。如下為測試結果:
定義變量
執行時間
平均時間
否
1890ms
1859ms
1844ms
1875ms
1859ms
1865ms
是
890ms
890ms
984ms
875ms
890ms
905ms從以上測試結果看出,定義變量比不定義變量,asp的執行速度快了一倍。
至於為什麼會這樣,本人也沒有更進一步深入研究了。不過通過這個實例,讓我確實感受到規范編程才能讓程序運行得更高效。對於不規范的編程,語言本身雖然具有容錯性,但其分析過程是需要時間為代價的。當然了,對於一個簡單的程序來說,也許規范與不規范它們所耗時間的差別是微乎其微的,但是如果你開發的系統比較大,頁面多,函數調用也多,那麼規范與不規范它們所耗時間的差別就會凸顯出來了,少則1、2倍,多則幾十倍都不足奇。