[經驗] -- PHP團隊開發中遇到的那些坑,看我是如何解決的?
坑一 : 團隊開發中,每個人都有自己擅長的整合環境,比如WAMP、AppServ、XAMPP,正是因為這些環境不統一,完成任務提交程式碼後,每當測試出BUG的時候,都會有 “程式碼在我機子上執行沒有問題” 的說辭。那麼問題來了,如何解決這個問題?
如何統一開發環境?
我為大家推薦一個工具,Vagrant。
Vagrant 是一款用來構建虛擬開發環境的工具,我們可以通過 Vagrant 封裝一個 Linux 的開發環境,分發給團隊成員。成員可以在自己喜歡的桌面系統(Mac/Windows/Linux)上開發程式,程式碼卻能統一在封裝好的環境裡執行,非常霸氣。
大家可以自己搜尋下相關文章,安裝其實都挺方便的,使用很酷。
坑二: 團隊開發中,當同事請假或離職後,我們要接手他的程式碼,相信我們開發者都有這樣的體會,閱讀別人的程式碼,其實是一件很痛苦的時候(PS:這也不是絕對的,閱讀大牛的程式碼還是蠻有收穫的,古語云,:三人行,必有我師焉,擇其善者而從之,其不善者而改之,這又何嘗不是對自己一個提升的機會呢!),如果遇到 基本沒什麼註釋,而且命名極其不規範,那我只好崩潰啦。。。那麼問題來了,如何解決這個問題?
如何統一程式碼質量?
我為大家推薦一種方法,PHPStorm + CodeSniffer。
當然,開發PHP的IDE有很多,團隊中還是要統一IDE的,有時不同的IDE下寫的程式碼,因為 空格、tab縮排的問題,在不同的IDE下展示還是有問題的。
CodeSniffer 是什麼?它是一個很不錯的PEAR包,它能分析PHP程式,JAVASCRIP和CSS檔案並且檢查出哪些是與定義好的程式碼風格相違背的,如果有違背的情況在編輯器中會自動有提示的。
雖然可以定義你自己的編碼風格,但PHP_CodeSniffer的編碼風格是十分方便的。
我們團隊,目前使用的PEAR規範。
同時 類命名,方法命名的,可以自己制定自己的規範。
我沒有寫具體的安裝步驟,希望大家都能動手研究一下。