Perl開發(fā)過程中需要注意的幾個小事項
本文和大家重點討論一下Perl開發(fā)過程中需要注意的幾個小事項,在用這個Perl的過程中,發(fā)現(xiàn)它其實并不是那么簡單的,很龐大的一個語言平臺,可以說是SHELL的超級版,也可以是PHP的姊妹版。
Perl開發(fā)過程中幾個小注意事項
Perl是一種腳本語言。最初的設(shè)計者為拉里·沃爾(LarryWall),它於1987年12月18日發(fā)表。Perl借取了C、sed、awk、shellscripting以及很多其他程式語言的特性。其中最重要的特性是他內(nèi)部集成了正則表達(dá)式的功能,以及巨大的第三方代碼庫CPAN。Perl原名pearl,但是在這個語言官方發(fā)表前,拉里·沃爾發(fā)現(xiàn)已經(jīng)有個程式語言“pearl”,便將這個程式語言的名字改成Perl。
因為工作原因,離開C++一段時間了,一直用這個所謂的腳本語言來構(gòu)建一些CGI應(yīng)用。在用這個Perl開發(fā)的過程中,發(fā)現(xiàn)它其實并不是那么簡單的,很龐大的一個語言平臺,可以說是SHELL的超級版,也可以是PHP的姊妹版,說不出的感覺,反正也挺實用的。這里記錄一些小注意事項,供自己復(fù)習(xí),也許能提醒各位有心的朋友。
1、undef,'',0在邏輯判斷式中都是表示FALSE的意思,但你可要注意,你的業(yè)務(wù)邏輯是這樣的嗎?比如$ABC=$ABC||0;$ABC=$ABC||1,通常地||可用于設(shè)置默認(rèn)值,你需要再確認(rèn)你的代碼確是描述這個邏輯嗎?我和我的同事可是幾次栽在這個地方。比如:如果用戶沒選擇或***訪問表單,該域值為UNDEF,但里面用0表示全部了,如果想當(dāng)然就||0,那就不對了。
2、CGI模塊和查詢串的共存問題(估計很少人會犯這個錯,即便犯了也很容易發(fā)現(xiàn))。就是你總是需要先從〈STDIN〉或ENV{'QUERY_STRING'}解析表單參數(shù)或URL參數(shù),然后初始化CGI(或加載)去讀取SESSION內(nèi)容。
3、Perl開發(fā)過程中在傳遞多層引用關(guān)系時,盡量用臨時變量來保存引用,否則可能引用出錯。如某函數(shù)需要一個引用數(shù)組,該數(shù)組每個元素是一個數(shù)組的引用,子數(shù)組的元素又是一個HASH的引用,這時你***用兩個中間標(biāo)量來簡化,否則賦值下來可不容易搞對。
4、Perl開發(fā)過程中當(dāng)你想實現(xiàn)一些PERL本身無法實現(xiàn)的功能時,比如像C/C++跟系統(tǒng)多一些接觸(類似于API功能)時,請想到search.cpan.org,你的同行通常都做好了現(xiàn)成的模塊供你調(diào)用了.說不出的全.
一時想不出更多了,以后慢慢補(bǔ)充吧!
本文出自“守望者的技術(shù)日記和六味生活”博客,請務(wù)必保留此出處http://dannyyuan.blog.51cto.com/212520/38696
【編輯推薦】
- 深入學(xué)習(xí)Perl運算符用法
- Perl文件句柄概念詳解
- 深入學(xué)習(xí)Perl開發(fā)工具用法
- 專家推薦 幾款常用Perl開發(fā)工具
- windows下Perl開發(fā)環(huán)境的安裝和配置



















