當前位置:文思屋>學習教育>考研>

ASP.NET和ASP有什麼區別

文思屋 人氣:2.05W

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