很多人會經(jīng)常問我這幾個問題:
1 我是新新手纤虽,我想學(xué)習(xí)PHP乳绕,該如何入門?
2 我感覺PHP的東西都知道逼纸,怎么還是寫不好程序洋措?
3 PHPer未來的發(fā)展在哪里,我該何去何從杰刽?
1 新手階段
對于新手菠发,你不應(yīng)該抱一本厚厚的PHP實例大全去啃,
而應(yīng)該先了解web運行原理贺嫂,B/S(瀏覽器->Server)web架構(gòu)交互流程滓鸠。
很簡單,我們都會上網(wǎng)吧第喳,但是你有沒有想過糜俗,當(dāng)你在瀏覽器中輸入www.taobao.com敲下回車后,
到底發(fā)生了什么,淘寶網(wǎng)頁是怎么呈現(xiàn)出來的悠抹?
[簡單的B/S交互流程圖]
如上圖(現(xiàn)實中的淘寶比這個復(fù)雜太多了)珠月,這里的后端程序,如果是用PHP寫的(最初的淘寶就是用PHP寫的)锌钮,
那你就會很清楚的知道PHP應(yīng)該出現(xiàn)在什么位置桥温,
當(dāng)你要獨立開發(fā)一個web站,應(yīng)該學(xué)習(xí)操作系統(tǒng)(windows/linux),前端(HTML/CSS/JS)梁丘,后端(PHP)侵浸,數(shù)據(jù)庫(mysql),web服務(wù)器(apache/nginx),
所以氛谜,不應(yīng)該是LNMP/LAMP掏觉,而是LHCJAPM...
這里推薦兩本書《跟兄弟連學(xué)PHP》,《PHP官方文檔》
跟兄弟連學(xué)PHP值漫,這本書入門完全夠了澳腹,LHCJAPM基本都涉及到了。
PS:10年時間杨何,這本書的作者幾人酱塔,硬是把兄弟連PHP培訓(xùn)干到新三板上市,佩服危虱。(誰說學(xué)PHP沒前途)
2 初級階段
對于PHP初級同學(xué)羊娃,基本寫PHP也1,2年了埃跷,感覺PHP的東西都知道了蕊玷,真的嗎?
PHP的異常處理弥雹,PHP的CLI垃帅,依賴注入,動態(tài)擴展剪勿,PHP的GC贸诚,PHP測試,SPL厕吉,反射赦颇,設(shè)計模式,PHP安全赴涵,composer媒怯。。髓窜。
這些你都用過或都熟悉嗎扇苞?
再比如欺殿,你自己嘗試寫過框架嗎?你看過開源框架的源碼嗎鳖敷?
回到問題上脖苏,感覺PHP的東西都知道,為什么還是寫不好程序定踱?
很簡單棍潘,你缺少計算機思維,我們都知道崖媚,PHPer大多數(shù)都是半路出身亦歉,
理論上,學(xué)習(xí)PHP的路線應(yīng)該是:計算機基礎(chǔ)畅哑,計算機網(wǎng)絡(luò)肴楷,操作系統(tǒng),數(shù)據(jù)庫荠呐,C語言赛蔫,然后再去學(xué)PHP。
如果你都了解計算機是怎么運行的泥张,還能寫不好程序呵恢?
3 高級階段
這個階段,如果你還叫自己是PHPer媚创,那你再回到上面去練級吧瑰剃,這個時候,你應(yīng)該定位自己是程序員筝野,是工程師。
你的關(guān)注點粤剧,應(yīng)該是解決程序問題歇竟,系統(tǒng)問題,如何去設(shè)計系統(tǒng)抵恋,如何去架構(gòu)系統(tǒng)焕议?
比如系統(tǒng)為什么這么慢?為什么老出現(xiàn)502弧关?
如何去設(shè)計一個高可用系統(tǒng)盅安,如何做一個秒殺系統(tǒng),如何去設(shè)計一個廣告系統(tǒng)等等世囊。
當(dāng)然别瞭,除了這些,你應(yīng)該了解下株憾,開發(fā)之外的東西蝙寨,如敏捷開發(fā)晒衩,DevOps,Docker墙歪,云計算听系,ci/cd,大數(shù)據(jù)等等虹菲。
以上靠胜,僅僅是個人觀點,如果你有什么更好的意見和看法毕源,歡迎拍磚浪漠。
【Laoyang技術(shù)工作室】用心做好技術(shù),快速實現(xiàn)價值脑豹。http://laoyang.tech
歡迎加入【中小微互聯(lián)網(wǎng)公司技術(shù)聯(lián)盟】郑藏,加入請留言,或聯(lián)系QQ: matrixs