陽宇宸:Web開發語言的策略性選擇

對於一些複雜型和功能型網站建設來講,可能開發語言的選擇是很是重要的一步。這一步的好與壞直接影響到之後網站程序的升級以及功能的擴展。目前,在國內主流的開發語言主要有ASP/ASP.NET,PHP,JSP.那麼對於對網絡技術不懂的客戶來講,到底該選擇哪一種語言,可能會是一片茫然,聽別人說,更是一頭霧水。下面咱們來分別分析這些語言的優缺點。php

PHP:錢字當頭,PHP是免費,而ASP是付費的。APACHE+PHP+MYSQL+LIUNX徹底免費。PHP升級快有目共睹,而ASP基本都不升級。PHP代碼簡練,直觀,運行速度快,另外目前主流技術都支持,好比WebService、Ajax、XML等等。看起來好象的確是PHP比較好。對於有獨立服務器的人來講PHP的確是個誘惑,可是分析一下狀況能夠得知,PHP的服務器維護起來就不是那種狀況了。對於大量的小型網站來講PHP的數據庫MYSQL的代價就不小。適合網站類型:論壇,購物網站,娛樂網站,信息類型網站。數據庫

JSP:狀況不少的時候同於PHP。JSP也是免費的,速度也快,安全性高,可是JSP好象只適合於大型網站。對於小型網站特別是要將服務器放在WINDOWS系統之上就麻煩多多。另外在網上提供的虛擬空間JSP的也很少。價格比較昂貴。適合網站類型:大型綜合門戶網站。編程

ASP/ASP.NET:ASP最好的就是能夠直接放在WINDOWS上,以你們都熟悉的模式來編程。同時ASP又是以簡單著稱,使用者多多。在網上的虛擬空間方面也以ASP居多,並且價格便宜。可是ASP的弱點就是速度相對較慢。畢竟技術是幾年前的老技術。雖然如今有ASP.NET推出,可是其編程模式徹底不一樣於ASP。雖然也提供ASP的編程模式,可是編輯器功能支持很差。ASP.NET既適用於小型網站也適用於大型網站,應該是之後建站的首要選擇。瀏覽器

 

網站開發語言對比,選擇合適語言安全

目前主流的幾種網站動態編程語言介紹以下:服務器

ASP全名Active Server Pages,是一個WEB服務器端的開發環境,利用它能夠產生和執行動態的、互動的、高性能的WEB服務應用程序。ASP採用腳本語言VBScript(Java script)做爲本身的開發語言。網絡

PHP是一種跨平臺的服務器端的嵌入式腳本語言。它大量地借用C,Java和Perl語言的語法, 並耦合PHP本身的特性,使WEB開發者可以快速地寫出動態產生頁面。它支持目前絕大多數數據庫。還有一點,PHP是徹底免費的,不用花錢,你能夠從PHP官方站點(http: //www.php.net)自由下載。並且你能夠不受限制地得到源碼,甚至能夠從中加進你本身須要的特點。框架

JSP是Sun公司推出的新一代網站開發語言,Sun公司藉助本身在Java上的不凡造詣,將Java從Java應用程序和Java Applet以外,又有新的碩果,就是JSP,Java Server Page。JSP能夠在Serverlet和JavaBean的支持下,完成功能強大的站點程序。編程語言

ASP.NET:ASP 最新的版本 ASP.NET 並不徹底與 ASP 早期的版本後向兼容,由於該軟件進行了徹底重寫。早期的 ASP 技術實際上與 PHP 的共同之處比與ASP.NET 與 PHP的共同之處多得多,ASP.NET 是用於構建 Web 應用程序的一個完整的框架。這個模型的主要特性之一是選擇編程語言的靈活性。ASP.NET 可使用腳本語言(如 JScript、VBScript、Perlscript 和 Python)以及編譯語言(如 VB、C#、C、Cobol、Smalltalk 和 Lisp)。新框架使用通用的語言運行環境 (CLR);先將您語言的源代碼編譯成 Microsoft 中間語言代碼,而後 CLR 執行這些代碼。這個框架還提供真正的面向對象編程 (OOP),並支持真正的繼承、多態和封裝。.NET 類庫根據特定的任務(例如,使用 XML 或圖像處理)組織成可繼承的類。除了編程語言和方法以外,當您用 ASP.NET 編程時,能夠用 ODBC 來集成數據庫;ODBC 提供了一組一致的調用函數來訪問您的目標數據庫。編輯器

 

優點和弱點

ASP.NET 的優點很明顯在於它簡潔的設計和實施。這是面向對象的編程人員的夢想:語言靈活,並支持複雜的面向對象特性。在這種意義下,它真正可以與編程人員現有的技能進行互操做。

ASP.NET 的另外一個優點是其開發環境。例如,開發人員可使用 WebMatrix(一個社區支持的工具)、Visual Studio .NET 或各類 Borland 工具(如 Delphi 和 C++ Builder)。例如,Visual Studio 容許設置斷點、跟蹤代碼段和查看調用堆棧。總而言之,它是一個複雜的調試環境。許多其餘第三方的 ASP.NET IDE 解決方案也將必然出現。

可是ASP.NET強健性,是以損失效率爲代價的。ASP.NET 在內存使用和執行時間方面耗費很是大,這大部分歸因於較長的代碼路徑。對基於 Web 的應用程序,這些侷限多是一個嚴重的問題,由於在 Web 上,您的應用程序可能擴展爲每秒成千上萬的用戶。內存使用率還可能成爲 Web 服務器上的一個問題。這幾個都提供在 HTML代碼中混合某種程序代碼、由語言引擎解釋執行程序代碼的能力。但JSP代碼被編譯成 Servlet並由Java虛擬機解釋執行,這種編譯操做僅在對JSP頁面的第一次請求時發生。在ASP 、PHP、JSP環境下,HTML代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的 HTML頁面只依賴於Web服務器,而ASP 、PHP、JSP頁面須要附加的語言引擎分析和執行程序代碼。程序代碼的執行結果被從新嵌入到HTML代碼中,而後一塊兒發送給瀏覽器。ASP 、PHP、JSP三者都是面向Web服務器的技術,客戶端瀏覽器不須要任何附加的軟件支持。

 

PHP是最好的網站開發語言(對於大多數中小型系統應用開發者而言)

做爲一個全新的互聯網項目,有時候會面臨一個選擇什麼樣的開發語言的問題。我說的這個有時候,實際上是指現有的團隊中,沒有技術開發的成員的狀況。若是已經有了一個或者多個技術開發人員,固然是選擇現有成員最熟悉和最擅長的語言了。那麼對於一個尚未技術成員的團隊,應該選擇什麼樣的開發語言呢?回答這個問題,首先應該搞清楚選擇開發語言的時候應該從哪些方面考慮?我認爲做爲一個項目選擇開發語言應該考慮幾個方面:

一、成本

一個互聯網的項目,開發每每是前期投入的大頭,而大多數創業團隊前期的資金都不是很充裕,如何控制開發成本,就成爲一個須要考慮的問題。開發成本又包括開發人員成本以及開發資源成本(開發設備、服務器帶寬資源等等);

二、效率

如今的互聯網發展,時間是最大的成本,是否可以快速的開發出可上線的產品,每每成爲項目是否可以得到成功的一個重要因素;

三、可擴展性

不少項目都是分階段實施的,若是一個項目的開發語言的可擴展性不強,可能會對項目後期的實施帶來巨大的麻煩。

四、可移植性

做爲服務器平臺,早期用WINDOWS是比較方便、快速、「省錢」(主要是維護成本)的,可是當一個項目上升到必定階段的時候,是否會須要換到Linux、Unix等平臺呢?

五、性能

項目要搞大,必定要上規模,對於一個項目將來可能達到的規模須要有一個「預估」。若是一個語言不能支撐你將來項目的規模,那麼確定選擇的時候就須要很慎重了。

遇到一個項目的項目語言選擇的評估,按照以上幾條分別進行考慮:

項目需求:一、須要儘可能節省成本;二、對效率需求很大;三、有擴展性需求;四、須要考慮可移植性;五、屬於應用互聯網的項目,性能方面不會要太高的要求。

太新、太偏的語言人力成本通常都較高,太新了,開發人員熟悉程度不高,影響效率。太偏了,可擴展性不高。因此,只選擇主流語言:ASP、.Net、Java、PHP這類的語言。

ASP、.Net 屬於微軟的「個性」產品,可移植性不夠,否掉。

Java語言,太「高端」,開發人員成本相對較高,而開發效率稍差一些,最終選擇了PHP語言。

PHP語言,出現時間比較長,語言相對比較成熟。開發人員比JAVA成本略低一些,開發效率比JAVA快。PHP與平臺無關,可移植性比較好,代碼幾乎能夠不用修改的在WINDOWS、LINUX上通用。PHP的性能比JAVA略差,可是從這個項目對性能的需求來看,在可預期的時間內,還足夠應付。

 

總之,ASP,PHP,JSP,.Net都有至關數量的支持者,由此也能夠看出各有所長。正在學習或使用動態頁面的朋友可根據他們的特色選擇一種適合本身的語言。

相關文章
相關標籤/搜索