原始網址
思過崖歷程:
自學的動機、自學的技巧、自學的目標三個方面描述學習PHP的經歷
一、自學的動機:
一定要有濃厚的興趣,興趣是最后的老師,可以在你迷茫的時候不斷地支撐著你走下去。
自學不是為了工作,不是為了夢想,僅僅是隨便玩玩而已,大可不必各種糾結,互聯網很發達,教程隨便一搜就一大堆,學個一知半解裝裝B還是很輕松的,特別是慕課網上的各種眼花繚亂的視頻教程,絕B會讓你恨時間如流水,何其寶貴~~然而這并沒有什么卵用,在大部分的情況下,它僅僅適合學習某一門語言的一個專題,并沒有針對某一門語言提供由淺入深,系統全面的教程。
Web全棧學習路線圖吧,這也是我目前自學到的主要編程內容
二、自學的技巧:
定位要明確,知識體系要系統,并一定要做好筆記
定位要明確就是在你通過自學對整個全棧開發有一個初步了解后,就要確定一下你未來的職業發展方向。如果你喜歡前端就一心一意地往前端方向去發展;如果你喜歡后臺就專心致志地往后端方向去發展;
目前為止自學的內容有哪些,以及教程的出處在哪
- 前端:
HTML學習HTML5 | 瓢城Web俱樂部
CSS(LESS):學習CSS的時候,并沒有看視頻,找到的這樣一本書,《CSS從入門到精通》,比較基礎,也比較系統全面,推薦。
JavaScript:當初很多人說JavaScript太復雜,建議直接學習jQuery框架就好。但是我的理念就是知識體系要系統,現在想來,這絕對是一個非常正確的選擇。殊不知近年來,前端發展異常迅速,前端框架千變萬化,讓人眼花撩亂,即使學會了jQuery框架,如果不會jQuery框架的基礎JavaScript,又怎么能夠平滑過渡到其他的JavaScript框架呢?誠然,我目前也的確認為世界上最難的編程語言是JavaScript,但這又是Web開發從業人員不得不面對的,所以請享受無法擺脫的痛苦。
推薦書籍:JavaScript高級程序設計(第3版) 中文,學過JavaScript的都說好,不要被他的書名給嚇到了,真正是一本深入淺出,從入門到精通的好書。
視頻教程:李炎恢老師的JavaScript視頻教程大部分內容也都是借鑒于這本書哦,看完了老師的149集JavaScript視頻教程里面的知識點部分,感覺沒有原版的書籍有滋有味,也沒有原版的書籍講得連貫。
jQuery框架:JavaScript學完之后,必學歷史悠久,影響深遠的jQuery框架,推薦鋒利的jQuery(第2版) ,深入淺出,系統全面;如果想踏入jQuery高手第一陣營,那就研究一下jQuery 2.0.3的源碼吧,可以看一下妙味課堂-jQuery源碼分析視頻,有50多集的試看教程。
建議先試看,覺得好再買會員,因為也不見得你能看得懂,哈哈哈!jQuery源碼是豐富的寶藏,蘊含了很多優秀的設計模式與開發理念,其他的JavaScript框架大都受此影響,想致力于前端開發的人,值得一看!
ExtJS:說實話此框架組件豐富,功能比較強大,不過入門比較難,不再建議學習
FIS:百度官方出品,用于構建前端開發自動化的工具,代碼合并、壓縮、測試,一氣呵成,當你能夠熟練使用JavaScript與jQuery的時候,直接看官方文檔即可,官網FIS3 - 前端工程構建工具。
BootStrap:我自己的技術博客寫如詩的代碼 ,和思過崖的問答社區 問答社區都有使用。Twitter官方出品,世界上最流行強悍的HTML+CSS+JavaScript前端開發框架。在目前眾多的Yii和Laravel后端PHP框架中已經內置了Bootstrap前端開發框架,這個也算是給很多致力于后臺開發,但又想做出比較好看的前臺頁面的程序員GG或者是全棧工程師帶來了無比巨大的希望。關于Bootstrap 的學習,看官方文檔或者菜鳥教程都行
- 后臺:
ASP:這個不多說,建議別看,我當時學習ASP,只怪兒時年幼無知,貼吧有大神說學會ASP之后,學PHP就很容易了,ASP是PHP的基礎;我無異于挑起爭端,尼瑪,PHP本身就是以入門容易、上手快出名的呀;而且全世界目前大概有80%的網站都是用PHP做出來的,你還學ASP干毛線;視頻地址:ASP互動視頻教程,建議別看!在講PHP的時候談ASP,就是想讓大家知道這是一個坑;
ASP.NET:同為微軟家的產品,ASP.NET我倒是挺喜歡的,駱老師的教學視頻也絕對是業界良心,誠意之作,由淺入深,系統全面,ASP.NET基礎實例教程。記得有一次我凌晨兩點給他發郵件,他10分鐘之后就給我回復了,這樣的好老師就和你的高三班主任一樣,是可遇不可求的。另外說到了ASP刀NET,就不得不祭上我最愛的三大開發神器之一的VisualStudio了;不過后來的微信公眾號開發很火,才轉向了PHP方向。
PHP:
直接就在 課程 | 瓢城Web俱樂部 上找到了PHP的教學視頻,這個算是對我大學以及未來的求職寫如詩的代碼 有里程碑意義的事情了。飲其流者懷其源,學其成時念吾師,感謝李炎恢老師能夠獨自一人,始終如一的堅守,由淺入深,系統全面地出品了588集的PHP視頻教程,在這個在線教育商業化程度越來越高的時候,實屬不易。
客觀上來講,李炎恢老師的PHP分為四季,每一季都以項目實戰為主,很鍛煉人的動手能力和全棧開發的能力。
建議初學者可以先學習第一季、第二季和第四季,第三季難度比較大,先不要學。等參加工作后,項目做熟練了,想沉淀下來對PHP語言本身有一個深度的認識,再學也不遲;
時間方面:588集的教程視頻也確實可以說是工程量巨大,其中牽扯到的又有HTML,CSS,JavaScript、jQuery、jQuery UI、jQuery EasyUI等相關技術和SVN,Navicat等開發工具。如果你比較拼命的話,每天學3到5集(每集大概20分鐘),其他時間用于惡補PHP相關的技術,大概半年的時間是可以大大提高你的身價的。
有人說韓順平等老師的視頻教程是免費的,這個問題也有朋友私聊過我,我當時的一致回復都是其他老師側重于專題知識點和小項目,而李老師的視頻側重的是完整項目的實戰開發,因為他們的視頻教程,我也都有學習過,例如韓順平老師的HTTP協議在李炎恢老師的教程里面就沒有出現,這個HTTP協議還是非常建議學一下的。
四季的PHP教程主要有哪些內容
第一季:用PHP基礎知識開發一個個人博客項目
- PHP開發環境的搭建
- ZendStudio IDE編輯器的使用和項目版本控制
- PHP基礎知識
- 自己寫一個富文本編輯器
- 一個完整的項目的前后端開發以及mysql使用的流程
第二季:用面向對象的知識開發一個CMS新聞管理系統
- 使用面向對象的方式去開發項目
- 學會三層架構的開發模式
- 如何自己去寫一個模版引擎,了解網站內容緩存的原理
- 一個完整的項目的前后端開發以及mysqli使用的流程
第三季:學會自己寫一個框架,開發一個在線商城系統
- 學會各種PHP設計模式
- 使用Smarty模版引擎
- 自己寫一個PHP框架出來
- 支付寶API的調用
- 一個完整的在線商城項目的前后端開發的整個流程
第四季:使用大道至簡的ThinkPHP框架開發類似新浪微博的系統
- 學會使用ThinkPHP開發框架,當你艱辛地學完第三季的時候,第四季已經是So easy了
- 學會Mysql優化的各種方法
- 學會使用SVN對代碼進行版本控制
- 一個完整的基于ThinkPHP框架+Navicat數據庫管理工具+SVN代碼版本控制工具的項目的前后端開發的整個流程
學完這四季的內容,估計在你們學校已經遙遙領先于眾多人了。想突破的話,還要自己單槍匹馬做一個項目出來再說。請記住,Speak easy,show me your code.
關于PHP這個主要部分的內容,就到此結束了,放一張我在為知筆記軟件上做的筆記目錄和內容的截屏吧。這個很重要,希望大家都能夠養成勤做筆記的好習慣。
大綱式總結篇
用PsySH (PHP的REPL),讓你能隨時試驗簡短的代碼
用Google,哪怕是用中文搜索,99.99%的PHP問題都能搜到,只要你知道怎么搜
反復地翻閱PHP: PHP Manual,盡早通讀一遍,能省去為各種基本問題糾結的反復
關注Packagist的popular列表,經常的去一些package的github上讀代碼,不需要讀全部,讀感興趣的就行
如果用框架,就去讀它的源代碼,理解它的設計模式和架構技巧
現在PHP程序員如果一定要看書,就看這本 Modern PHP
另外兩本備選,也很有用:PHP Objects, Patterns, and Practice /PHP Cookbook
PHP并不難學,八分敲打,兩分閱讀,你能學得很快,用好REPL
<u>入門視頻:</u>
入門視頻推薦:哈佛大學公開課:構建動態網站
Beginner PHP and MySQL Tutorial
另,java版的 斯坦福大學公開課:編程方法學推薦看看。
若實在想看國內的,可看下:慕課網-國內最大的IT技能學習平臺
<u>關于書籍</u>:
原則:只看國外的,只用Google,只用英文. 一般用圖靈的技術書籍。
推薦書籍:
入門篇:《PHP和MySQL Web開發(第四版)》
進階篇:《深入PHP 面向對象、模式與實踐》
鉆研篇:《代碼大全》《重構 改善既有代碼的設計》《程序員修煉之道 從小工到專家》《人月神話》,其他:數據結構與算法、設計模式、安全、最佳實踐。
<u>在線教程</u>:
- 推薦一個在線學習: Introduction to PHP
其他資源:
基礎,官方文檔 PHP: Hypertext Preprocessor
關于問答,使用Stack Overflow(任何疑問,用g),Quora - Your Best Source for Knowledge (業余時間看看),What are the best blogs for a PHP developer?,國內:德問:編程社交問答,php - SegmentFault
其他教程,推薦 SitePoint PHP ,http://code.tutsplus.com/categories/php
使用一個MVC框架,<u>從面向對象開始,遠離面向過程</u>,推薦laravel ,初學可CI入門
不停的做項目。coding到一定數量,才會明白其中道理
<u>做好的程序員,遠離百度,使用Google,學會用英語搜索</u>
PHP之道:PHP: The Right Way
國內博客:風雪之隅-Laruence的博客 ,火丁筆記,楊建:網站加速--Cache為王篇 ,張宴博客.
Github資源:justjavac/free-programming-books-zh_CN · GitHubjustjavac/free-programming-books-zh_CN · GitHubnemoTyrant/manong · GitHub
PHP官方文檔就是很好的入門學習資料,里面提供了大量示例代碼可以練習。實驗樓的基礎課PHP - PHP編程語言 就是基于官方文檔《PHP參考手冊》中文版制作,提供在線練習環境,可以邊看教程邊實踐。如果是零基礎,建議先從HTML、CSS、Js等一些基礎入手,可以參考這條學習路徑PHP研發工程師
基礎語法熟悉后可以做些PHP相關的小項目快速上手。下面的項目課程都是免費的,可以找感興趣的練練手。
1.PHP - PHP留言本
非常適合PHP入門的一個小項目,內容涉及jQuery、Ajax、PHP和MySQL等技術。常用作網站的留言反饋部分。
2.PHP - 轉盤抽獎
使用javascript、html、css、jquery和php實現一個轉盤抽獎,讓你窺探抽獎背后的秘密。
3.PHP - 校花評比排名項目-PHP
分析利用《社交網絡》中評比算法,通過兩兩美女之間比較,計算出顏值,得出美女排名。PHP結合前端相關技術實現。
4.PHP - Laravel實現用戶注冊登錄
這個項目主要是帶大家上手PHP最優雅的框架Laravel,從零開始實現網站開發的用戶注冊和登錄,并在這個過程中逐步熟悉Laravel。
5.PHP - PHP會話控制
實例講解PHP中cookie和session原理以及在web開發中的應用。
6.PHP - ThinkPHP實現云書簽
學習ThinkPHP實現服務器端的相關功能,利用AmazeUI和jQuery實現前端功能和交互,利用json完成客戶端與服務器間的通訊。