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