Web開發如今是如日中天,熱的發燙。那我們應該怎麼學習呢?這不光是初學者,很多學了幾年的人也會有些迷茫或者彷徨,大家也都知道不斷學習是不可避免的,不學習肯定要掉隊;那怎麼學效率更高,那些是坑,那些是路,每個人可能都有自己的簡介。作為一個程式猿,從兩個方面說說我的想法: 學習方面 1.基礎部分,主要就 ...
Web開發如今是如日中天,熱的發燙。那我們應該怎麼學習呢?這不光是初學者,很多學了幾年的人也會有些迷茫或者彷徨,大家也都知道不斷學習是不可避免的,不學習肯定要掉隊;那怎麼學效率更高,那些是坑,那些是路,每個人可能都有自己的簡介。作為一個程式猿,從兩個方面說說我的想法:
學習方面
1.基礎部分,主要就是html、css、JavaScript。
這個其實不用多講,這些個基礎不學扎實了啥也幹不了,可以直接從html5、css3、ES5來學習。學習的方法很多,最方便的方法是像w3cschool、匯智網這種邊學邊練的,類似之前微軟的所見即所得,喜歡讀紙質書的可以買幾本書來看看。
2.幾個邊界,是說與美工相關、後端開發、設計相關。
想做好Web前端,一定搞清楚自己的工作界面在什麼地方,這對你有很大幫助。每個公司可能都不一樣,所以瞭解邊界相關的知識就很重要。
-
美工相關
主要是說ps、切圖之類的東西,photoshop還是需要會用的,至於說你能不能搞出漂亮的圖片來那倒不是重點,關鍵點是體會美工的工作過程。如果你在公司兼了這件事,那你就得深入的學習了,別不以為然,前端的美術有修養還是挺重要的。
-
後端開發
雖說一般情況下,前端開發和後端開發是分開的,不過二般情況也很多。這個時候就需要你在後端中選擇一條主線,很多人都在比較PHP、Python、Node.js哪種好,其實都差不多,不過從市場上的熱度來說視乎Node.js更熱一些,當然Node.js對js熟悉的前端來說也更容易上手。我的建議還是先從Node.js來吧,如果公司有選擇或者有餘力可以學學其他兩個。資料庫似乎mysql和mongodb都可以試試。
3.相關標準,標準這個東西很多人都不屑的很。
其實很重要,越大的團隊越重要。還是熟悉熟悉養成好的習慣微妙。這在初期至少涉及到很多相容性問題,所以W3C的標準是必須瞭解和掌握的。
4.各種框架類庫,jquery,bootstrap等,
現在的框架比較多,但是jquery和bootstrap這樣級別的必須得熟練掌握,要不很多公司都沒法幹活。一般類庫和框架都有垂直的網站可以學習,如bootstrap中文網之類的都很不錯。
5.工具,這個有很多如Git、webpack、Gulp、github、Nginx 等等。
工具本身實際上不學也能幹活,從學習的角度來說,這個時間的分配上可以少一點兒,但是從工作的角度來說,如果需要的話要儘快上手,逐步熟悉。工具類的東西都不是特別難上手,幾天可能就差不多了,但是想玩的透,極大的提高效率這個還是需要投入不少時間的。
學習其實本身沒有那麼多的規矩,還是看個人的情況,但是上面這些範圍是大家都繞不開的,如何合理有效的利用時間就是最最重要的。
書籍方面
基礎部分
HTML和css還有Java是基礎知識但是相比較來講HTML和css比較簡單,而Java涉及內容之廣泛超乎大家的想象
image
這個是有人推薦學習Java要看到書此書據說能夠幫助你區分哪些是語言的精華,哪些是糟粕,對於語言精華,應該深入學習。還有一個《入門到精通》實在不信你可以百度百科一下Java的長度和HTML的長度,你就知道。
進階部分
上面的知道了基本就能做出靜態頁面了,畢竟web前端就是乾這個的,但是對於現在越來越重要的用戶體驗,大家已經越來越不滿足簡簡單單的靜態頁面了,而是需要各種交互(UI還得設計的好,要不用戶打開覺得醜早就給你關了)
進階的css《精通css》
image
看完這本書你應該對:盒子模型,流動,Block,inline,層疊,樣式優先順序,等概念非常瞭解了。在進階,關於js框架,有興趣的同學可以抓緊時間看一看,框架語言大多是jQuery(框架的重要性屏蔽瀏覽器的差異性),相容和響應式是大多數web前端需要考慮的事情,大多數的人最討厭看見的英文單詞應該就是bug但是解決bug又是他們存在的意義。
Java
語言內部機制。必須弄清如下概念:JS 中變數的作用域,變數傳遞方式,函數的定義環境與執行環境,閉包,函數的四種調用方式(一般函數,對象的方法,apply,call),以及四種調用方式下,‘this’指向的是誰。
3.DOM學習
除此之外關於dom要學習《Dom編程藝術》
image
(關於此書還有一版藍色的)
雖然在此之外web前端就夠用了但是誠築說來講交互設計還是必須的,最簡單的就是各種按鈕的動效
必讀
後端雖然不用特別懂吧,但是你喜歡還是可以學習一些的。作為初學者,看書覺得難懂的話,想找老師帶一帶入門,那麼你可以來我的QQ群,群內提供免費學習資源。(web前端學習交流群:328058344 禁止閑聊,非喜勿進!)