ASP.NET和ASP有什么區別
ASP.NET的腳本是雨HTML分離的,代碼被編譯成了DLL, DLL可以在server端執行。
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的代碼量要小得多
【ASP.NET和ASP有什么區別】相關文章:
asp和asp.net之間的區別11-14
談談ASP和ASP.NET的區別01-08
有什么ASP.NET常用函數11-11
ASP.NET簡介10-16
網站性能優化asp.net11-11
ASP.NET 主題配置教程11-10
ASP.NET MVC異常處理模塊簡單教程-ASP.NET教程實例推薦10-24
asp.net的學習過程講解11-13
ASP.NET Page函數調用解析11-11