PHP學習規(guī)劃


為了不盲目學習,讓學習路線更清晰,良好的分配學習時間,在這里對PHP做一個簡單的學習規(guī)劃。


階段一:基礎(chǔ)階段

熟悉LAMP / LNMP / WAMP,能夠完成基本的環(huán)境安裝,簡單的配置維護;能完成小型系統(tǒng)的PHP開發(fā),或者在中型系統(tǒng)中支持某個PHP模塊的開發(fā)。

1.PHP:
熟悉基本的語法數(shù)組、字符串、數(shù)據(jù)庫、Socket、XML、GG/ImageMgk圖片處理等;熟練使用一兩個PHP框架(ThinkPHP、Yil、Zendframework等);了解MVC運行機制,能快速學習一個MVC框架,知道一些不同PHP框架的區(qū)別;知道開發(fā)工程文件目錄,養(yǎng)成良好的編程習慣、能擔任小型系統(tǒng)的開發(fā),中型系統(tǒng)中某個模塊的開發(fā)工作。

2.Linux:
了解常用的命令,管理員操作,知道vim編輯器,能夠?qū)懸粚懞唵蔚膕hell腳本,知道基本的服務配置。

3.Apache/Nginx:
了解常用的和PHP搭配的服務器,能梳理安裝配置環(huán)境,知道基本的核心配置選項,基本配置操作,讓服務器能正常工作。

4.MySQL:
能夠自己搭建MySQL,了解InnoDB和MyISAM兩個引擎的區(qū)別;熟練MySQL的常用操作,訪問控制、權(quán)限、備份恢復等;能手工編譯搭建一個MySQL數(shù)據(jù)庫,配置好編碼等能穩(wěn)定正常的運行。熟練phpMyAdmin或任意一種MySQL管理維護工具。

5.前端:
了解一下HTML/CSS/JS等相關(guān)知識,知道web標準,div+css的頁面模式;了解一些JavaScript知識,JS框架(如jQuery)。


階段二:中級

能快讀完成常規(guī)配置,能快速定位解決大部分開發(fā)問題;能承擔中型系統(tǒng)的架構(gòu)與開發(fā)工作。

1.php:
熟練掌握PHP常用語法、函數(shù);熟悉PHP的面向?qū)ο缶幊?,能在開發(fā)中熟練使用常規(guī)的設(shè)計模式;熟悉PHP常用庫,能夠使用常用的PHP庫今夕項目開發(fā)。

2.Linux:
熟練使用Linux命令行操作,能對MySQL和Apache進行優(yōu)化以提升網(wǎng)站性能;能夠配置小型服務器集群(雙服務器or三服務器);能夠今夕Linux系統(tǒng)安全配置、日志管理。


3.MySQL/MongoDB:
熟練掌握MysSQL語句,知道MySQL性能瓶頸原因和解決方法;知道InnoDB/MyISAM索引存儲結(jié)構(gòu),知道InnoDB事務處理機制,知道常規(guī)SQL優(yōu)化。同時了解一下NoSQL中的代表MongoDB,了解和MySQL的差別,能適當使用mongo進行開發(fā)。

4.Redis/Memcached:
此時我們會涉及到一些緩存處理,需要了解基本的緩存,知道Memcached和Redis的區(qū)別和應用場景,了解他們的工作原理、機制。

5.前端:
熟悉場景的同喜標準,熟悉基本的HTTP協(xié)議(協(xié)議代碼200/300/400/500),能更具手冊寫出符合通信標準的程序;學習一些前端框架(jQuery/Bootstrap/RequireJS/YUI等),同時深入學習JavaScript編程,閉包、Dom等。

6.系統(tǒng)設(shè)計:
此時我們能夠設(shè)計部分中型系統(tǒng)的網(wǎng)站架構(gòu)、數(shù)據(jù)庫、基本的PHP框架選型;性能測試排查,完成網(wǎng)站的開發(fā)維護工作;擁有自己的代碼庫,可以在項目中進行復用;能對項目中的難點和新技術(shù)進行攻關(guān)。


階段三:高級

除了基本的PHP業(yè)務開發(fā),還能解決大部分深入復雜的技術(shù)問題,能完成大中型系統(tǒng)的設(shè)計開發(fā);選擇自己專業(yè)的方向深入研究(如MySQL\php\Redis等)

1.php:
精通PHP語法、函數(shù)、有自己專注的方向;了解主流框架的優(yōu)缺點,方便項目中做技術(shù)選型,對大部分框架能迅速上手并使用;對php工作機制有一定了解,包括php-fpm工作機制,對zend引擎有一定了解,對php內(nèi)部機制打部分核心數(shù)據(jù)結(jié)構(gòu)(基礎(chǔ)類型、Array、Object)實現(xiàn)有一定了解,對核心基礎(chǔ)結(jié)構(gòu)(zval\hashtable\gc)有深入學習了解;能夠進行一些php擴展開發(fā),熟悉php和Apache/Nginx不同的同喜交互方式細節(jié);有自己的代碼庫,和自己熟悉精通的某些公用類庫。

2.Linux:
熟練操作、維護、優(yōu)化Linux,能夠編寫負責的shell腳本來協(xié)助完成備份、自動化處理、監(jiān)控等工作;能夠優(yōu)化配置服務器集群;能夠進行不停機維護升級等等

3.MySQL/MongoDB
精通SQL語句,除了基本的SQL優(yōu)化還能完成一些負責操作,如大批量數(shù)據(jù)導入導出,更改表結(jié)構(gòu)、增刪索引字段等高危操作;對事務、主從、分區(qū)等有一定的理解和應用;對備份技術(shù)有更攝入的了解,災備還原、冷熱備份、多IDC備份等。

4.前端:
深入了解HTTP協(xié)議,各個細致特殊協(xié)議代碼背后的原因(如302靜態(tài)文件緩存了,502nginx后面php掛了之類的);除了前端的各種框架應用整合能力,還可以自己嘗試開發(fā)一些類似jQuery的前端框架,或者開發(fā)一個富翁編輯器等。

5.其他領(lǐng)域的學習:
此時已經(jīng)有了一些語言方面的積累,可以嘗試學習不同的編程語言如:Python、Ruby、Java、C++等等,除了本身領(lǐng)域內(nèi)的知識,也可以根據(jù)自己的興趣愛好學習一起其他方面的知識比如:分布式、云計算、語言識別、移動開發(fā)等等。


技術(shù)學習到PHP中級程序員后就需要選擇發(fā)展方向進行分化了,根據(jù)不同的公司性質(zhì)、自己的興趣愛好等,所需要學習的技能也不同,要精通所有的東西是不可能的,所以選擇自己擅長的技術(shù)深入學習吧。


參考:http://www.devstore.cn/essay/essayInfo/6520.html


2017-04-19

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 按照了解的很多PHP/LNMP程序員的發(fā)展軌跡,結(jié)合個人經(jīng)驗體會,抽象出很多程序員對未來的迷漫,特別對技術(shù)學習的盲...
    Gundy_閱讀 1,081評論 3 32
  • 今天復習了小詞的讀法,還是感覺嘴巴沒有辦法一下子記住。 有a、an、the、of、are。 a和an: 句子中的連...
    classybaby閱讀 309評論 0 0
  • 文|墨默 伴著濃烈的期待,大張旗鼓地迎來了春節(jié)七天小長假,便在七天的時間里為所欲為,亂了平日里的節(jié)奏。 眨眼間的七...
    墨默天地閱讀 645評論 4 23
  • 文/美惠 你焦慮嗎?《應對焦慮》這本書中詳細的講解了焦慮的本質(zhì)、焦慮的種類、和焦慮產(chǎn)生的原因,但是無論我們了不了解...
    自律小達人美惠閱讀 260評論 0 1
  • 7、在委屈面前學會說“不” 現(xiàn)在的獨生子女常被人稱為小“皇帝”,以自己為中心,不顧及他人的利...
    素心執(zhí)畫筆閱讀 148評論 0 1

友情鏈接更多精彩內(nèi)容