說明:本文節(jié)選自《淺談php開發(fā)團隊管理及程序員做人問題》。全文請點擊這里訪問。
看了標題,也許很多程序員會反感的說:“程序員的做人問題先不用談,你想出來這個標題,那你做人是不是有問題吧!”
筆者本人并不反駁這樣的說法,每個人都有自己的做人原則。法國人的那句俗話說的好:“我不茍同你的思想,但是我絕對捍衛(wèi)你思想的自由”。 是,這是站在個人的立場上可以那么說。但是如果站在一個團隊的立場上呢?一切不盡然了!
無論馬拉車的原理也好,還是木桶原理也好,西方人整出來那些比喻確實是值得贊賞的。但是個人認為還是欠缺一些! 其實作為一個完整的團隊,有幾個出類拔萃的技術人才是非常必要的。技術團隊在技術上必須要有階梯,否則對于一手抓金錢,一手抓發(fā)展的程序員而言,抓不住他的心?。∷哉f,這些西方人的東西放到政治中,或者下放到?jīng)]有什么研發(fā)必要,只是熟練工的環(huán)境中,是必須的,必要的。但是在技術團隊中,并不是最優(yōu)的。
引導一個正確的技術方向,對于整個團隊的發(fā)展及壯大有舉足輕重的必要。既然今天主要談php,那么班門弄斧的多說2句php的東西。
首先要規(guī)范大家編碼習慣,采取拿來主義就可以了!
數(shù)據(jù)庫層建議全部使用adodb的數(shù)據(jù)庫類,以盡量減少程序員直接寫sql語句的可能性為目的。這對于以后數(shù)據(jù)庫移植及本身的安全都有好處,最關鍵的還是規(guī)范大家的書寫習慣。雖然很多人抱怨效率不太好,但是筆者始終認為一個穩(wěn)定高于效率、個人必須服從團。如果還抱怨效率問題,那加個cpu,換上2gb的內(nèi)存。不知道抱怨的主兒,是否不用adodb寫出的代碼比加個cpu還要快?
數(shù)據(jù)庫建議還是使用mysql吧! 起碼要4.1以上的版本。支持事務是非常有必要的。
采用mysql的原因有很多。第一:兼容性好;第二:功能相對完善;第三:容易配置;第四:支持開源。mysql5,這里就不多說了。因為國內(nèi)程序員開發(fā)依然以mysql4+php4為主,筆者不想給團隊造成開發(fā)成果不兼容的現(xiàn)象。
apache 是筆者堅決的選擇。從國際市場占有率62%就知道了:)安全,高效的突出特點無疑是iis無法企及的。雖然最近windows2003 server搶占了一些市場分額,但是依然難以撼動apache的地位。這中間還有一個更主要的角色,那就是liunx。 這里不過多討論liunx了,但是作為一個好的php程序員,如果他一點都不了解liunx,那無疑也是郁悶的事情。筆者用自己的情況可以大概說說:幾年前,筆者開發(fā)一個liunx虛擬主機的管理軟件,拿到需求后,就做技術方案的可行性分析,發(fā)現(xiàn)涉及大量的對mysql數(shù)據(jù)庫及apache的操作,如何完成這些操作呢?這其中要求你必須對liunx系統(tǒng)有一定的了解,否則項目根本無法進行!當然還有很多例子,例如php的負載均衡解決方案;數(shù)據(jù)庫雙備份方案…...太多了。
php依然以4.0版本為主要開發(fā)工具,但是起碼需要掌握smarty。邏輯業(yè)務和頁面是必須要分離的。在這里要尤其談到pear。 這里還是有人提出執(zhí)行效率的問題。筆者依然強調(diào),那個不是問題。pear也有自己的數(shù)據(jù)庫類。程序員完全可以考慮和adodb交換使用,無所謂了??磦€人的開發(fā)嗜好。
但是pear豐富的類庫,讓筆者垂涎三尺?。海?
提到php。不能不說說zend。
zend是好人?。?沒有zend就沒有php的今天,那么大家也就沒有了今天的飯碗,今天的這篇文字。
zend 的系列工具及解決方案都是每個php程序員必須去理解的。
起碼在一個團隊中,zend studio 應該能被熟練的運用,這對項目的管理及開發(fā)都有深遠的意義。zend 系列產(chǎn)品有版本管理,代碼優(yōu)化,代碼加密等等優(yōu)秀功能舉不勝舉。這里不多說的。大家有機會可以去http://www.phpchina.cn 或 http://www.zend.com 去自己看。
最后說到svn或cvs做版本管理,那也是必不可少的。為什么還用說嗎?
最后總結下來,無非就是編碼的規(guī)范和統(tǒng)一。從技術上獲得了思想的統(tǒng)一,大家在協(xié)作開發(fā)的時候才能心有靈犀,才能事半功倍。沒有一個程序員會使用自己不感冒的開發(fā)工具去做出賞心悅目的作品來的!
對于團隊的管理,具體下來還是對人的管理。程序員無非要2種東西,錢和發(fā)展。
控制好給予的量,是整個團隊是否能和諧的關鍵! 落后的要扶起來,太冒進了要壓下去。你保護的是大家的利益,而不是某個人的利益。公平,公正才是一個管理者必須掌握的。
至于私下的交情,要學會通融和諒解,但是一旦事情進入程序中,也就是說一旦提到一定高度的時候,就必須要放棄私情而尋大義了。
好了,以上是在管理者的角度去談了很多團隊的管理問題。基本上是自己的一些理解和想法。
新聞熱點
疑難解答