當前位置:學問君>學習教育>考研>

ASP.NET和ASP有什麼區別

學問君 人氣:2.04W

ASP.NET的腳本是雨HTML分離的,代碼被編譯成了DLL, DLL可以在server端執行。

ASP.NET和ASP有什麼區別

ASP的腳本是與HTML在一起的,每次都會進行解釋執行。

拓展:

ASP.NET背後有一個完整的.NET Framework支撐

什麼是 ASP.NET?

ASP.NET 是建立在公共語言執行庫上的編程框架,可用於在服務器上生成功能強大的 Web 應用程序。與以前的 Web 開發模型相比,ASP.NET 提供了數個重要的優點:

增強的性能。ASP.NET 是在服務器上執行的編譯好的公共語言執行庫代碼。與被解釋的前輩不同,ASP.NET 可利用早期綁定、實時編譯、本機優化和盒外快取服務。這相當於在編寫代碼行之前便顯著提高了性能。

世界級的工具支援。ASP.NET 框架補充了 Visual Studio 集成開發環境中的大量工具箱和設計器。WYSIWYG 編輯、拖放服務器控件和自動部署只是這個強大的工具所提供功能中的少數幾種。

威力和靈活性。由於 ASP.NET 基於公共語言執行庫,因此 Web 應用程序開發人員可以利用整個平臺的威力和靈活性。.NET 框架類庫、消息處理和數據訪問解決方案都可從 Web 無縫訪問。ASP.NET 也與語言無關,所以可以選擇最適合應用程序的語言,或跨多種語言分割應用程序。另外,公共語言執行庫的交互性保證在遷移到 ASP.NET 時保留基於 COM 的開發中的現有投資。

簡易性。ASP.NET 使執行常見任務變得容易,從簡單的窗體提交和客戶端身份驗證到部署和站點配置。例如,ASP.NET 頁框架使您可以生成將應用程序邏輯與表示代碼清楚分開的用戶介面,和在類似 Visual Basic 的簡單窗體處理模型中處理事件。另外,公共語言執行庫利用託管代碼服務(如自動引用計數和垃圾回收)簡化了開發。

可管理性。ASP.NET 採用基於文字的分層配置系統,簡化了將設定應用於服務器環境和 Web 應用程序。由於配置資訊是以純文字形式存儲的,因此可以在沒有本地管理工具幫助的情況下應用新設定。此“零本地管理”哲學也擴展到了 ASP.NET 框架應用程序的部署。只需將必要的.檔案複製到服務器,即可將 ASP.NET 框架應用程序部署到服務器。不需要重新啓動服務器,即使是在部署或替換執行的編譯代碼時。

可縮放性和可用性。ASP.NET 在設計時考慮了可縮放性,增加了專門用於在聚集環境和多處理器環境中提高性能的功能。另外,進程受到 ASP.NET 執行庫的密切監視和管理,以便當進程行爲不正常(泄漏、死鎖)時,可就地創建新進程,以幫助保持應用程序始終可用於處理請求。

自訂性和擴展性。ASP.NET 隨附了一個設計周到的結構,它使開發人員可以在適當的級別“插入”代碼。實際上,可以用自己編寫的自訂組件擴展或替換 ASP.NET 執行庫的任何子組件。實現自訂身份驗證或狀態服務一直沒有變得更容易。

安全性。藉助內置的 Windows 身份驗證和基於每個應用程序的配置,可以保證應用程序是安全的。

asp使用vb腳本和java腳本編寫。

asp沒有自己的編譯環境。

asp是和html混編。

asp.net是用vb.net和c#.net編寫的。

asp.net有自己的編譯環境。

html放在前端,代碼放在後端。

ASP.Net與ASP的區別在於前者是編譯(Compile)執行,而後者是解釋(Interpret)執行,前者比後者有更高的效率。

開發語言不同

Framework。

執行機制不同

ASP是解釋執行的編程框架。

ASP.NET是編譯性的編程框架,執行是服務器上的編譯好的公共語言執行時庫代碼

開發方式

從一開始使用ASP,用戶面臨的問題就是:如果應用程序要有強大的功能,就需要編寫大量的代碼,所有的功能都必須用代碼來實現。雖然使用一些小技巧可以實現代碼的共享,但是仍然存在大量嵌入HTML的代碼,難於管理。這還只是一個表面現象。

從更深的層次來研究ASP.NET,會發現ASP.NET與ASP之間的區別主要在於以下幾個方面。

(1) 效率

ASP是一個腳本編程環境,只能用VBScript或者JavaScript這樣的非模組化語言來編寫。當ASP程序完成之後,在每次請求的時候解釋執行。這就意味着它在使用其他語言編寫的大量組件的時候會遇到困難,並且無法實現對操作系統的底層操作。由於它是解釋執行的,所以速度和效率要遠遠低於編譯執行的程序。而ASP.NET則是建立在.NET Framework之上的,它可以使用Visual Basic、C++這樣的模組化程序設計語言,並且它在第一次執行時進行了編譯,之後的執行不需要重新編譯就可以直接執行,所以速度和效率比ASP會提高很多。

(2) 可重用性

在寫ASP應用程序的時候,ASP代碼和HTML混合在一起。只要有需要,就可以在任意的一個位置插入一段代碼來實現特定的功能。這種方法表面上看起來很方便,但在實際的工作中會產生大量繁瑣的頁面,很難讀懂,導致代碼維護很困難。雖然可以使用 include指令儘量讓程序模組化,但是仍然不是一個最終徹底的解決方案。而ASP.NET則可以實現代碼和內容的完全分離,使得前面提到的問題迎刃而解。

(3) 代碼量

ASP需要對所有的要實現的功能透過編寫代碼來實現。例如,所有的ASP程序員都遇到過這樣的情況:爲了保證一個用戶數據提交頁面的友好性,當用戶輸入錯誤的時候會顯示錯誤的位置,並儘量把用戶原來的輸入在控件中顯示出來。這樣的一個應用需要程序員編寫大量的代碼來實現。雖然它實在是一個非常簡單的功能,但在其他的應用程序中根本不需要編寫這麼多的代碼就可以實現。在ASP.NET中,程序員會發現只要預先說明,這樣的功能ASP.NET就可以自動實現。所以相對來說,要實現同樣的功能,使用ASP.NET比使用ASP的代碼量要小得多

TAGS:ASP Aspnet