crystal譯·yesky 最佳化和緩衝儲存. 這是怎樣辦到的呢? 根據指令碼的首次請求, runtime將代碼進行編譯,並將編譯結果進行高速緩衝儲存複製(備份). 不論何時,只要指令碼有請 求,被儲存的副本都可以調出使用. 此結果大大的增強了系統效能, 因為在首次請求之後,代碼能更快的從編譯版本中運行. 有人也許就會問了”它怎麼知道我什麼時候作了改動?” 微軟已對此作出解答.Runtime通過檔案系統來監視源檔案. 當初始源檔案發生改變時,它自動將編譯版本從高速緩衝儲存備份中拖出,因此當下一個要求來臨時,它(編譯檔案)會被重新 編譯.這就意味著系統會自動編譯代碼, 程式員就再也用不著為人工編譯而頭疼了. caching 對於多數的系統開發人員而言,他們必須研製出一些“caching”來使系統速度加快。無論是ASP頁面輸出到HTML檔案格 式,網路連接速度都非常慢。或是從緩慢的internet連結引用,到recordset的 狀態和漫遊表單上的email表示符,甚至一個 資料庫動態驅動菜單,實際上不是完全的動態驅動,你不能為你每個客戶請求而浪費大量時間。在建立網站時,一般來說, 少量資料不會持續改變,但是正因為它們不是真正意義上的動態,不意味著使代碼複雜化,那麼它們在哪兒呢?所以,你 得開發一些caching 基本的 caching 活動是首先甄選適當的資料進行儲存。然後你需要將它們放置在程式中的application級變數中。然 後,識別代碼。然後,你就得決定得將資料存放區多久,並寫出程式,以便及時清空caching.但是,如果你清空了caching的 話,那麼所使用的程式得具有使資料重新恢複的功能。 在ASP.NET中建立了CACHING系統。使得使得整個系統比以前更為物件導向,使得 caching系統也可以儲存 對象 。因 此,無論何時caching,也可以隨時調用。你可以根據需要設定資料存放區的時間來決定建立各種類型的環境。 通過檔案系 統,你甚至可以在檔案上連結一個詳細的項目,這樣當檔案發生改變時,連結的項目就會同時被儲存。 還不僅限於此,ASP.NET也儲存輸出資料。 為ASP。NET指令碼結果做一個備份,因此當別人調用它時,他甚至不用運 行,正確的輸出結果就已在發送中。它主要基於查詢字串來工作,如果參數不能與儲存中的參數相匹配,則記載參數的 頁面會迴轉到儲存版本中 一些時候,依據網站來判斷出什麼需被儲存是有一點技巧,但是至少現在不需要。 更快更簡便的開發 任何開發平台都會向你提供一個固態的環境. 在ASP裡,雖然這個環境的效能是優良的,但實際上它亳無用處.但是通過 ASP.NET,在你書寫你的第一行代碼前,這個環境已為您做足了準備工作。以前程式員為了設計完善的程式,而不得不做的重 複的煩人的工作,現在這個環境已為你做完了. 物件導向模型 當你的代碼比以前任何時候都要運行得更快的時候,你已經得到一個真正的事件模型並可以對它進行控制。在過去, 如果你希望某程式啟動並執行早一些,你就不得不將程式放在頁面的前面,相反,則放在頁面的後部。這種方法往往不會起到 很大的作用,所以你還得通過各種方法來構建你的代碼以獲得想要的效果. 這個“spaghett-code”問題能夠通過使用大量 的事件來修正,例如 page_load 每個頁面級的對象都會有它們自己的事件模型,並且有能夠啟用設計好的Server事件。類似於 Button_Click 或 Listbox_Change 的例行程式,能夠做出標準的表單處理,以及代你處理大量的相對簡單的日常工作。讀代碼也成為可能, 如此就意味著即使某段程式在六個月後出現了問題,也可以發現你以前的設定,並及時進行調試。
|