PERL—--面向二十一世紀(jì)的語言
發(fā)布時間:2008-08-06 閱讀數(shù): 次 來源:網(wǎng)樂原科技
這是SUN微系統(tǒng)公司(http://soldc.sun.com)面向廣大開發(fā)人員進(jìn)行的一個在線調(diào)查結(jié)果。
您使用什么語言來開發(fā)基于WEB的客戶端應(yīng)用程序?
Perl 62.1%
JSP 12.5%
PHP 8.7%
C, C++ 7.1%
ASP 5.7%
其它 3.7%
PERL 編程語言的設(shè)計(jì)者 Larry Wall把PERL稱為后現(xiàn)代語言,它的目的不是要推出一種新的風(fēng)潮,而是集各種語言的優(yōu)勢,解決實(shí)際問題。PERL強(qiáng)大的功能、簡潔到極點(diǎn)的語法,使它受到了廣大程序員的特別喜愛,成為一種非常流行的工具。使用PERL開發(fā)出的應(yīng)用程序數(shù)以萬計(jì),公共代碼的PERL庫函數(shù)覆蓋了計(jì)算機(jī)的各個領(lǐng)域,成為其它語言所無法比擬的一個資源,這些庫函數(shù)都可以在WWW.CPAN.ORG找到。
從語言功能與性能來看,PERL與任何一種現(xiàn)代語言相比都毫不遜色,這主要表現(xiàn)在如下各方面。
1、快速的開發(fā)過程
PERL程序是一個文本文件,盡管在運(yùn)行時實(shí)際有一個編譯過程,但此過程是不可見的。對程序員來講,它完全象一個解釋性語言,可以隨改隨測試。
2、極強(qiáng)的可移植性
PERL把有關(guān)文件系統(tǒng)和網(wǎng)絡(luò)的調(diào)用歸結(jié)為其固有函數(shù)。PERL已經(jīng)在幾乎所有的平臺上都有兼容的版本,這意味者一個PERL程序,只要未用到與操作系統(tǒng)有關(guān)的調(diào)用,就可以不加修改的在任何平臺上運(yùn)行。PERL甚至統(tǒng)一了目錄分隔符,即使在WINDOWS系統(tǒng)下,也可以使用 / 作為目錄分隔。
這種可移植性是其它語言,包括JAVA所無法比擬的。
3、極豐富的語言功能和文本處理能力
PERL有很多功能極強(qiáng)而又極為簡潔的運(yùn)算符和固有函數(shù)。特別是在文本處理和正規(guī)表達(dá)式方面的功能,使很多在別的語言里極難解決的操作成為極為簡單的操作,比如,用正規(guī)表達(dá)式分解、替換、匹配字符串等。PERL在這方面的優(yōu)勢已被其它語言如JAVASCRIPT借用,但由于缺乏PERL靈活的語法,正規(guī)表達(dá)式在JAVASCRIPT里的使用還是麻煩不少。
PERL語言本身支持?jǐn)?shù)組和對應(yīng)數(shù)組,這使程序員能輕易使用復(fù)雜的數(shù)據(jù)結(jié)構(gòu),用復(fù)雜的算法高效的解決各種問題。同樣的問題,即使使用C++的STL也要困難若干倍。
PERL不但能處理文字,也能處理二進(jìn)制數(shù)據(jù)和C的數(shù)據(jù)結(jié)構(gòu)。
4、高超的性能
PERL的運(yùn)行速度大大超過一般解釋性語言。與JAVA相比,PERL大約快一個數(shù)量級。這是因?yàn)镻ERL實(shí)際上是一個編譯性語言,PERL腳本在運(yùn)行前先經(jīng)過編譯、優(yōu)化,轉(zhuǎn)化為一個運(yùn)算符樹,直接調(diào)用C語言實(shí)現(xiàn)的各種內(nèi)部函數(shù)。而JAVA則是在一個虛擬機(jī)器上解釋BYTECODE。
如果有需要,PERL可以被編譯為C代碼,然后生成可執(zhí)行文件,這樣就省去了每次運(yùn)行時所需的編譯過程,提高啟動速度。
5、對OOP的強(qiáng)大支持
PERL支持幾乎所有面向?qū)ο蟮木幊谭椒?,如類、繼承、多繼承、虛擬函數(shù)、運(yùn)行時類型確定等等。而且,PERL具有其它語言無法比擬的動態(tài)調(diào)用功能。目前,幾乎所有的PERL庫函數(shù)都是以O(shè)OP的方式,寫成類的模塊。
6、與C/C++的接口非常方便
PERL里的很多庫函數(shù)是用C/C++寫的,因此PERL有著非常聰明而且功能完善的C/C++開發(fā)接口工具。人們可以很容易的把C/C++代碼通過動態(tài)鏈接庫用于PERL程序。
7、極為豐富的函數(shù)庫
這是PERL最具有吸引力的地方,全世界的數(shù)以萬計(jì)的程序員在這些年中開發(fā)出了大量的源代碼,內(nèi)容涉及各個方面,包括:操作系統(tǒng)、網(wǎng)絡(luò)通訊、數(shù)據(jù)類型、數(shù)據(jù)庫接口、用戶界面、字符串處理、安全與加密、互聯(lián)網(wǎng)、服務(wù)器、存檔壓縮、圖像處理、郵件與新聞、文件系統(tǒng)、微軟視窗等大類,數(shù)以千計(jì)的模塊給程序員提供了極豐富的資源。這些模塊都符合PERL的編程標(biāo)準(zhǔn),從安裝到使用都極為簡單、方便。PERL本身即帶有自動從網(wǎng)上下載模塊,自動編譯、測試、安裝、生成使用說明的工具。
以上是一個對PERL優(yōu)越性的粗略介紹,還有很多地方在此無法全部提及。
PERL是如此的優(yōu)秀、實(shí)用,它已經(jīng)被廣泛應(yīng)用在各個方面,特別是在互聯(lián)網(wǎng)上。上述SUN微系統(tǒng)公司的調(diào)查即很好的證明了這一點(diǎn)。