學習ASP的理由 分析小結
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
眾所周知,ASP已經被微軟淘汰了,跟著,又被許多的開發(fā)者拋棄了。然而,我仍然認為ASP無論是作為入門的技術還是開發(fā)平臺,都很值得我們繼續(xù)去使用。 在Google上搜一下,可以發(fā)現(xiàn)一大堆對ASP不好的評價,什么運行速度慢、異常處理機制不好、缺乏面向對象機制、開發(fā)效率低、漏洞多等等。為了讓大家對ASP有個正確的認識,我先為它正名。 一、ASP不慢,慢的是數(shù)據(jù)庫 幾年前,我用動網(wǎng)論壇程序架了一個BBS,這套程序就是當時經典的ASP+Access架構。我也遇到了某些人所說的論壇慢,有時候卡死不動的問題。然而,自從我換上SQL Server數(shù)據(jù)庫以后問題就解決了。所以罪魁禍首乃Access。程序執(zhí)行所需的時間是毫秒級別的,在這個級別內,無論是10毫秒還是100毫秒,實在是感覺不出來,但是Access的并發(fā)性差,阻塞了部分程序執(zhí)行,導致頁面卡死。 二、異常處理機制很好,只是很多人不知道 以前,很多人包括我在內都用VBScript來編寫ASP程序,VBScript的異常處理機制的確是糟透了。然而,JScript則很好,因為它支持包括C#、Java都有的try…catch語句,足以處理所有異常。 三、在Javascript蓬勃發(fā)展的現(xiàn)在,面向對象也不是問題 自從Javascript因為Ajax而興起,它的面向對象機制就已經被模擬出來了。雖然不是真正的面向對象,但是作為中小型Web程序,這也足夠了。同樣以ECMAScript為核心的JScript也擁有相同的機制。此外,ECMAScript的語言靈活性無疑是最強的,做前端開發(fā)的人員對此最為清楚。 四、漏洞是程序員造成的 經常聽到有人說ASP的SQL注入漏洞非常嚴重,其實無論什么語言都存在這樣的漏洞,問題在于程序員會不會堵。ASP中可以通過參數(shù)化查詢簡單高效地解決這個問題。不需要字符串替換,甚至不需要數(shù)據(jù)驗證。 下面我來說說學習ASP(JScript)的好處: 一、前后臺技術兼修 無論是前臺的Javascript還是后臺的Javascript都是基于ECMAScript核心,所以,后臺的Javascript寫得好,前臺Javascript的水平也可以得到提高。 二、認識Web應用程序的基本原理 ASP.NET、PHP等技術屏蔽了許多Web的底層,這對初學者認識Web程序的原理非常不利。而ASP則絕對是從最基礎寫起,比如上傳文件的程序就必須分析數(shù)據(jù)包獲取文件數(shù)據(jù)。 三、開發(fā)效率高 很多人說ASP.NET的開發(fā)效率高,我對其持反對態(tài)度。如果應用程序的功能需求不復雜,絕對是用ASP開發(fā)要快。因為ASP是解析執(zhí)行,不需要編譯。修改、調試要方便得多。Windows也為ASP提供了一個很好的運行環(huán)境(IIS),無需再作額外的配置。此外,當前后臺都用同一種語言時,很多代碼都可以復用,這是其他技術平臺無法比擬的。 近年來也有其他的Server-Side Javascript(SSJS)出現(xiàn),比如Jaxer、JScript.NET,Mozilla也有一個SSJS的項目。期待ECMAScript在后臺開發(fā)中有更大的發(fā)展。 阿里西西的補充(技術強人) 說ASP是低能的人不是菜鳥就是連ASP都學不會的人,技術不是用來顯擺的,是用來創(chuàng)造實際價值的,其實很多應用ASP就已經能夠實現(xiàn),而且有大量的通用源碼可以參考,很容易轉化為生產力,可以說,動態(tài)網(wǎng)頁技術中,ASP是最廣泛最成熟的技術之一。ASP當然存在很多的不足,這時就需要其他技術來解決。
很多人錯誤地認為ASP是簡單、低效的代名詞,認為ASP是低能的,已經過時的,不足掛齒的,也很簡單,一學就會,一琢磨就精通。 有人講ASP不安全,寫ASP的程序的時候如果嚴格按照書寫安全的代碼的規(guī)范去寫,寫出來的程序也沒有什么理由不安全。那些人說ASP不安全,好像PHP、JSP的程序就不會出現(xiàn)SQL Injection似的。 有人講ASP不高效,真的想要高效的話你可以結合COM,在Win32平臺下COM的效率Java是永遠追不上的。單純講速度有什么意義呢?Java的速度絕對算不上高,論速度的話好多技術方案的速度都比Java高,這一點學Java的人最清楚了,可是誰在乎過這一點了?Java的勝出絕對不是因為它的速度。拋開具體的應用環(huán)境單純地講速度是不理性的。 有人講ASP這個不能做,那個做不了,功能很局限。其實只要你明白Web的原理的話你就會明白,寫ASP程序表面看是在玩一種腳本語言,但你指揮的是Web Server,有很多復雜的功能ASP也照樣能完成的很好,有些功能ASP假如因為Web應用的先天局限做不了,你不要以為JSP、PHP就能做到。 該文章在 2010/11/26 0:54:08 編輯過 |
關鍵字查詢
相關文章
正在查詢... |