|
如果你是個(gè)php開(kāi)發(fā)者,無(wú)論是新手還是高手,筆者都希望你能在此討論下自己對(duì)php的想法或者技巧。
1. 從OOP開(kāi)始
Naramore是SourceForge員工以及phpWomen.org的創(chuàng)辦人。對(duì)于初學(xué)者,她建議在學(xué)php之前先了解清楚OOP(Object-Oriented Programming)即面向?qū)ο缶幊趟枷搿?
“如果你來(lái)自非高科技行業(yè),很有必要花一些時(shí)間去學(xué)習(xí)軟件開(kāi)發(fā)的基礎(chǔ)流程。例如面向?qū)ο蟪绦蛟O(shè)計(jì)、測(cè)試驅(qū)動(dòng)開(kāi)發(fā)、版本控制、 調(diào)試、設(shè)計(jì)模式等。”
“如果你已經(jīng)嘗試過(guò)了但無(wú)法解決問(wèn)題,不要害怕開(kāi)口問(wèn)人。很多php社區(qū)的氣氛都是非常友好的,并且提供了大量初學(xué)者可用得上 的資源,這些都你來(lái)說(shuō)都會(huì)大有幫助的。找一個(gè)適合自己的穩(wěn)定的社區(qū),一個(gè)本地用戶組或一個(gè)開(kāi)源項(xiàng)目社區(qū),或者是一個(gè)freenode上的相關(guān) IRC聊天頻道。”
2. 隨時(shí)Google
Casey創(chuàng)立了一個(gè)軟件商店,并且在unconference流程方面做了很多研究。
他的建議是在php社區(qū)找到自己的位置以及遵循“發(fā)問(wèn)前先Google一下”。
“馬上找到一個(gè)用戶組加入,全世界有很多聰明的人聚集一起聊天、開(kāi)拓思路、互相幫助的php群。”
“記住,在提問(wèn)之前先嘗試在google上搜索。沒(méi)人喜歡懶惰的人。”
3. 加入開(kāi)源項(xiàng)目
Leonard 在運(yùn)營(yíng)一家愛(ài)爾蘭軟件公司echolibre,同時(shí)還是CloudSplit(一個(gè)云計(jì)算分析服務(wù))的聯(lián)合創(chuàng)始人。和他的很多同齡人一樣,他建 議應(yīng)該積極嘗試加入開(kāi)源項(xiàng)目,即使你是個(gè)新手。
“通過(guò)參加開(kāi)源項(xiàng)目你有機(jī)會(huì)看到那些源代碼,并可以向資深的前輩學(xué)習(xí)。”
“幫助開(kāi)源項(xiàng)目團(tuán)隊(duì)做一些事,例如尋找和記錄重復(fù)性的bug這樣的耗時(shí)任務(wù),他們會(huì)對(duì)你心存感激。當(dāng)我們想要雇用開(kāi)發(fā)人員時(shí), 如果他曾經(jīng)參與過(guò)OSS項(xiàng)目,我們會(huì)更多地考慮他對(duì)公司的潛在貢獻(xiàn)。”
4. 想了就做
Lornajane 他在網(wǎng)上的身份Mitchell更為出名,是一個(gè)php顧問(wèn)、開(kāi)發(fā)者、作家和演說(shuō)家。
她給出了一句簡(jiǎn)短的建議:想了就做。
“php是一種非常易懂、可以進(jìn)行快速開(kāi)發(fā)的語(yǔ)言。想知道一件事是否可行的最佳方法就是去做這件事。”
“任何人都可以用php編程。低門(mén)檻意味著會(huì)有很多糟糕的php作品。但很多糟糕的php作品卻是非常有用的,即使它看起來(lái)并不漂亮 。我個(gè)人認(rèn)為如果你能用php解決問(wèn)題,就大膽去實(shí)行,即便做出來(lái)的東西可能并不完美。”
5. 避免編碼倦怠
Cornutt 運(yùn)營(yíng)phpDeveloper.org和Joind.in,他從1998年開(kāi)始一直在使用php。他給php初學(xué)者的建議是千萬(wàn)不要產(chǎn)生編碼疲勞和倦怠。
“我認(rèn)為新手php開(kāi)發(fā)人員很容易陷入一種不堪重負(fù)的境地...初學(xué)者往往是對(duì)語(yǔ)言有興趣,但總是被一種“能運(yùn)行即可” 的心態(tài)誤導(dǎo),以至事倍功半。”
“試圖找到一位導(dǎo)師來(lái)引導(dǎo)你進(jìn)行這些初步的學(xué)習(xí)步驟。當(dāng)你真正去同他人溝通時(shí),會(huì)發(fā)現(xiàn)世界很多不同的東西。IRC是一個(gè)很好的 選擇,但找一個(gè)牛人做老師肯定是最佳選擇。"
“php開(kāi)發(fā)也是一種需要磨練的技能,沒(méi)人可以在一夜之間變成一名高手。”
6. 選擇一個(gè)好用的編碼器
Turner 從1996年開(kāi)始一直在做web相關(guān)工作和參加開(kāi)源項(xiàng)目。他運(yùn)營(yíng)phpKitchen.com,最近還殺入Seedcamp決賽。
他給了新手php開(kāi)發(fā)人員一個(gè)非常好的建議,可以節(jié)省時(shí)間,寫(xiě)出更好的代碼,并幫助維持你對(duì)編碼的興趣。
“閱讀經(jīng)驗(yàn)豐富的開(kāi)發(fā)者的代碼,你總會(huì)發(fā)現(xiàn)一些更好、更簡(jiǎn)潔的方式算法。不要重新發(fā)明輪子,使用庫(kù)可以避免自己編寫(xiě)重復(fù)的代 碼。"
“確保你的代碼是人類(lèi)可讀的,如果你的代碼6個(gè)月后連你自己也看不懂了,你讓合作的其他開(kāi)發(fā)者如何去看?"
“盡量簡(jiǎn)化接口,寫(xiě)簡(jiǎn)單的代碼難度更大,不過(guò),良好的重構(gòu)會(huì)為維護(hù)節(jié)省大量的時(shí)間和頭痛。"
“最后,了解一些杰出的程序員以及他們?nèi)绾味嗄瓯3謱?duì)編程藝術(shù)的熱情。”
7. 了解測(cè)試驅(qū)動(dòng)開(kāi)發(fā)、封裝和代碼控制
Herbert 從1999年一直玩php至今,他對(duì)Gentoo Linux作出很大的貢獻(xiàn)。
對(duì)于php初學(xué)者,他說(shuō)“學(xué)習(xí)測(cè)試驅(qū)動(dòng)開(kāi)發(fā)和封裝。一旦你熟悉它,你代碼會(huì)寫(xiě)的更快,而且繼承你代碼的人肯定會(huì)感謝你”。
“學(xué)會(huì)代碼控制,這是必經(jīng)之路。”
他還表示,php一個(gè)最大的優(yōu)勢(shì)是有大量的在線免費(fèi)文檔,不用像學(xué)其他某些語(yǔ)言一樣,跑到街上的書(shū)店去買(mǎi)教程。
8. 了解安全問(wèn)題
Maclean 是來(lái)自蘇格蘭的php和Python開(kāi)發(fā)者。
他說(shuō):“正因?yàn)?a href=/itjie/phpjishu/ target=_blank class=infotextkey>php易用性強(qiáng),所以有很多人都在使用,但我們必須想想那些初學(xué)者在用它做些什么。沒(méi)必要什么都從頭開(kāi)始寫(xiě)起, 適當(dāng)?shù)剡x擇使用框架是個(gè)很好的開(kāi)始。”
“另外要做的是了解有關(guān)安全的問(wèn)題。php曾經(jīng)在安全性上臭名遠(yuǎn)揚(yáng),就是因?yàn)橐子眯詭?lái)的副作用。我們必須學(xué)會(huì)避開(kāi)這些問(wèn)題。
php技術(shù):為PHP初學(xué)者的8點(diǎn)有效建議,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。