我從今年的2月份開始在知乎上連續回答前端開發相關的問題,至今已有將近三個月,回顧寫過的一百多條回答,很多是給迷茫的前端工做者的建議。也有很多私信向我提問,大多也都是關於學習方向的一些疑惑。今天我把個人思考提煉整理成文,但願能給予在迷茫中前行中的前端學習/工做者一些有用的建議。javascript
關於前端學習的問題主要能夠分三種:前端
【小白入門型】我想轉行學前端,靠譜麼?vue
【懷疑市場型】前端市場是否是飽和了?爲啥我仍是找不到工做?java
【提升受阻型】JavaScript學了又忘,記不住怎麼辦?學了HTML、CSS、JS,接下來該學習什麼?mysql
我想轉行前端,個人狀況是……,靠譜麼?react
對準備入行的新人,我有五個建議:git
擺正心態;不要想着三個月就月薪十幾k,人家必定沒告訴你那個三個月就月薪十幾k的同窗轉前端以前有三年JavaWeb經驗吧。打破你心中的幻想,戒驕戒躁,踏踏實實地一步步學。es6
找個好老師:新手極可能在方向上迷茫和迷失,有個引路人會少走不少彎路。github
自學能力:能把本身的問題總結出來,利用網絡查閱資料自學和自行解決問題的能力。ajax
勤動手:軟件工程屬於工科,要動手寫代碼的,「手懶癌」晚期患者要尤爲注意了!
Keep learning: 前端技術更新很快,必定要對新技術保有熱情,不斷嘗試學習新的技術,才能讓本身不被淘汰,進而尋求晉升。
爲啥據說XX很缺前端,我仍是找不到工做?如今前端市場是否是已經飽和了?
談論這個問題以前,首先要說一下前端學習曲線。前端學習曲線是典型的S型學習曲線,先平緩再陡峭再平緩,能夠劃分爲「菜鳥」階段、提升階段、高手階段。前端入門比較容易,這也成爲不少人轉行開發首選前端的緣由,但不少人在學習曲線變陡峭的提升階段,卡在那裏得不到突破,而公司要的是經歷陡峭以後的那些人,因而便有了:一堆初級前端找不到工做,一對公司招不到好前端的尷尬局面。因此知乎一堆只會切圖和用JQuery的自稱前端工程師叫囂着找不到工做,其實一點也不奇怪。之前的前端只是切切圖,jQuery下AJAX一下就差很少了,但現在前端已經徹底演變成各類js框架/技術的天下,不少公司加價招人,是想15-20k招一個靠譜的vue或者angular工程師而非只會用切圖加jQuery的「前端工程師」,這其中的轉變須要你花費很大的精力。
因此,不要懷疑市場飽和,前端不缺菜鳥和初級,缺的是高級和高手。
JavaScript學了又忘,記不住怎麼辦?學了HTML、CSS、JS ,接下來該學習什麼?
相似的問題出來基本說明你處在學習平緩區等待提高,也就是你還處在「菜鳥」階段,可是不要緊你已經有要突破的想法了,只是沒找到清晰的路子。
JavaScript學了又忘,要不是沒有動手寫代碼,要不是沒有深刻理解JavaScript的思想。前者戒掉「手懶」,後者多看幾遍《JavaScript高級程序設計》並寫demo。
學了HTML、CSS、JS ,接下來還應該學:
javascript(閉包,原型鏈,繼承等要會,最好學點es6/7)
跨域,ajax(算是javascript的基本應用吧)
ES6/7語法
Node.Js要懂點
Web compontent(Angular或vue或react)
必定的工程化工具和思想(什麼你說你git不會?瀑布模型不瞭解?Webpack要學一下)
一些前端中的邊角問題(瀏覽器兼容,移動端適配,響應式佈局等)
學習某某框架過程當中,不知道寫點兒什麼東西好?
能夠從我的博客入手。找一款本身喜歡的UI模仿,防止在設計上浪費時間;連帶後端一塊兒開發的話要學一點兒Node.Js 和數據庫如mongodb,mysql等。功能從文章的增刪改查到文章分類、標籤、分頁、評論等,完成就算入門了。後面能夠嘗試參加實際項目,也能夠在GitHub上找些好玩的項目模仿;若是後面能參與開源項目就更好,去github上提提issue,發發pull request,能力天然就提高了。