到今天,前端學習剛好滿一年。我也順利從非計算機專業轉到前端。對于前端學習,自己也是摸著石頭過河,中間也有過困惑和迷茫。本文主要講述自己一年來對于前端學習的心得體會,希望能對學習前端的人提供一些幫助。
?
前端主要分為三部分:html,css,js。
?
html:首先得了解標簽的含義,用在哪里,常用的用多了就知道了。另外H5也要去了解,對于H5的學習可以自己動手做一個H5的動畫場景。這里面涉及比較多的是css3樣式以及canvas。
?
css: 關于css還是推薦看書系統的學下。單看網上的,你可能只知道怎么用,卻不知道他這樣用所隱藏的含義。還有就是容易產生混亂,所以還是建議看書系統學一學。有些概念還是要掌握的,不然面試很容易懵逼。
?
js: 這個是最復雜的。首先建議先看書了解基本語法。但是只看不動手是不行的。很多人沒有項目也不知道從何練起。我個人是推薦百度前端技術學院題目,每一個題目后面都提供了解決這個問題所需要的知識點的鏈接。題目難度是逐漸增加的,越到后面越難。我自己也沒有做完,看個人情況。我把我自己做的放在了github上,可以下載查看當做參考。之后再繼續看書,繼續學習。
?
其他
框架:這個等你有了一定的JavaScript基礎后在開始學比較好。推薦入門jQuery, 這個比較簡單,容易建立信心。之后再學其他的框架,react, vue, angular. 學習框架建議先看框架文檔,一般配有簡單入門教程。現在用的比較多的都有中文版的教程的,所以不懂英文的可以看中文的。后期可以在github上找些項目練手。能夠加深你對這些框架的理解。
?
項目:最好去實習,參與一些項目。如果沒有實習經驗的,也可以自己找項目做。比如簡單的游戲,網站模仿等等,另外也可以網上搜,自己跟著做一個出來。我個人是在實習后又花了10多天搞了一個簡單web論壇,采用PHP, jQuery和mysql源碼參見:https://github.com/huanshen/web-bbs。這個可以參看《PHP和MySQL Web開發》,這本書能夠讓你知道前端后臺是如何一起工作的。這個項目在面試中發揮了蠻大的作用。問我項目難點的時候都說它。因為前端部分的難點感覺叫不上難點(就個人實習做的項目而言,也可能自己的實習比較水,畢竟小公司)。個人面經參看:2017年秋招前端招聘面經,另外自己也總結了一些前端面試常問的問題,含答案。
前端面試筆試知識匯總1(含答案);
前端面試筆試知識匯總2(含答案);
前端面試筆試知識匯總3(含答案);
?
nodejs: 這個很有必要去學習,具體可以看網上的教程《包教不包會》(https://github.com/huanshen/node-lessons),但是不是很系統,最好是找本書籍看看。第一遍比較難理解,你就照著寫就好,不理解也沒關系。可以看看nodejs相關文章或者書籍,以后有空再來一遍,慢慢你就會理解了。
?
ES6: 現在很多人都用ES6,所以還是推薦各位去了解一下。推薦阮一峰老師寫的書籍:http://es6.ruanyifeng.com/ 。我自己也根據上面的教程做了一些總結。參看:http://www.cnblogs.com/huansky/tag/ES6/??。
?
自動化構建工具:屬于加分項,你不懂也可以,懂更好。沒必要都了解,選一種去學習,有時間再去了解其他的,之前自己也 寫過gulp學習筆記。對于webpack,暫時還沒有去接觸。
建議:
基礎:面試最看重的還是基礎,所以一定要把基礎打好。書還是要多看的。《JavaScript高級程序設計》《JavaScript啟示錄》《JavaScript語言精粹》《JavaScript設計模式》等。總之要多看書。還有記得,書是一定要看多遍的 !看完記得總結。
?
讀源碼:建議先讀underscore.js。代碼總共1600多行(包含注釋說明),相比其他比較簡單,就是一個函數庫。讀源碼可以先看看網上的源碼的文章,后面自己在對著說明文檔讀源碼。盡可能讀懂每個函數的含義(讀不懂也不必太糾結)。后面再從大方向分析作者為什么要這么寫,包含其中一些細節的處理啊。然后思考如果是你,你會怎么寫等等。后面也可以閱讀jQuery或者其他的。
?
后臺:很多人說如今前后端分離,沒有必要再去學習后臺或者。個人認為這是錯誤的。首先,你把前后端一刀切斷,這個本身就不對了,這只會讓你的路越走越窄;其次你懂后臺,遇到問題方便和后臺交流;再者,編程語言是相通的,你多學了一門語言,肯定會在無形之間提升了你自己的能力。最后,哪一個牛逼的程序猿只懂一門語言啊。
?
學習方法:每個人學習方法不一樣,但是最重要的一點是要總結,然后慢慢摸索出適合自己的學習方法。個人覺得,你可以注冊一個博客,將自己平時學到的,看到的,記錄下來,沒事也可以瀏覽下自己寫的。無聊的時候看看別人寫的博客,你會從中學到很多的。
?
遇到困難:如果學習中遇到不理解的,建議先百度谷歌,一般都能夠得到解答的。還是不懂再去問別人,沒人可問也可以先跳過,繼續學習后面的。過段時間再來看一遍,你會發現有些問題已經不是問題了。還有一點最重要的就是要學會堅持。不要三天打魚,兩天曬網。既然選擇了前端,就風雨兼程。
?
最后預祝大家在前端道路上越走越遠。