還在迷茫於前端如何入門和進階?萬字指南讓你不再迷茫!

来源:https://www.cnblogs.com/TT485480/archive/2020/06/28/13204669.html
-Advertisement-
Play Games

我經常會看到很多同學在學習前端的時候比較迷茫,不知道到底應該以怎樣的學習路線來入門和進階前端領域。每次遇到這種問題我也會分享一下自己的學習經驗,但是發現這是一個問得非常多的一個共性問題。 作為程式員,肯定是不能容忍重覆無味的勞動的,因此我就系統地總結分享一下我的前端學習路線,希望對你能夠有所幫助。 ...


我經常會看到很多同學在學習前端的時候比較迷茫,不知道到底應該以怎樣的學習路線來入門和進階前端領域。每次遇到這種問題我也會分享一下自己的學習經驗,但是發現這是一個問得非常多的一個共性問題。

作為程式員,肯定是不能容忍重覆無味的勞動的,因此我就系統地總結分享一下我的前端學習路線,希望對你能夠有所幫助。

前言

前端學習是一個螺旋上升的過程,既要反覆地看書,也要抓緊時間進行實戰。只看書,看了就會忘,所以必須將看書和寫代碼相結合。只要你認真學,入門前端的話三個月左右就可以了。之後我還給出了前端進階路線,幫助你提升前端技能水平。我把前端入門和前端進階一共分為六個階段,並對相應階段所需要的大致的學習時間進行了標註。

我目前是在職前端開發,如果你現在也想學習前端開發技術,在入門學習前端的過程當中有遇見任何關於學習方法,學習路線,學習效率等方面的問題,你都可以申請加入我的前端學習交流裙:前面:603 中間:985 最後:993。裡面聚集了一些正在自學前端的初學者裙文件裡面也有我做前端技術這段時間整理的一些前端學習手冊,前端面試題, 前端開發工具,PDF文檔書籍教程,需要的話都可以自行來獲取下載。

前端入門

入門前端開發主要需要學習 HTML,CSS 和 JavaScript 三大件。之後學習前端主流框架的使用,並基於已學內容開發一個小項目進行實戰。當你把這些學習並理解透徹以後,也就算真正地入門前端了。

階段一:HTML + CSS

前端對於入門者相當友好,因為開始學習的時候你只需要一個瀏覽器,推薦 Chrome。HTML 和 CSS 可以直接運行在瀏覽器中,瀏覽器就是它們的運行環境。你也可以使用編輯器,推薦 VSCode,這是前端開發使用最多的編輯器。

HTML (HyperText Markup Language) 和 CSS (Cascading Style Sheets) 其實並不是編程語言。HTML 中文名叫做超文本標記語言,其實就是一些標簽。CSS 中文名為層疊樣式表,也就是一些樣式的配置。

首先學習 HTML,非常簡單。HTML 有非常多的標簽,剛入門的時候不要沉浸在記住這些標簽中,你也記不住。你只需要整體瀏覽一遍,知道有哪些標簽,各自的作用是什麼,整體有一個印象就行了。我推薦跟著MDN 的 HTML 學習路徑過一遍就行。我學習 HTML 的時候還看過兩本書,你感興趣也可以看一下,這是這方面很好的書了:

《Head First HTML and CSS》

《HTML5 與 CSS3 基礎教程》

看完之後可以自我檢測一下,例如常用的標簽有哪些,<!DOCTYPE>的作用是什麼,哪些標簽是行內標簽,哪些是塊級標簽,HTML5 有什麼新特性等。這裡不要花太多時間,大致過一下即可,不用都記住,之後有需要再回來查就行。

接下來學習 CSS,直接推薦目前最適合 CSS 入門的書:

《精通 CSS(第三版)》

在入門階段,不需要將整本書一字不差地看完,你只需要抓住幾塊核心內容,例如選擇器、層疊、繼承、盒模型、Flex 頁面佈局和網格等。這些內容快速過一遍就行,太細節的內容不用記,之後需要了再回來查。以上內容用時 6 天左右,其中 HTML 2 天,CSS 4 天。

有了這些基礎知識,你就可以進行實戰了。

寫完一個頁面之後別急著往下寫。你寫的第一個頁面肯定有很多問題,例如屬性使用錯誤,代碼縮進不規範等問題。這時候你應該找一個代碼規範,根據規範重寫你的代碼。這個規範我只是舉一個例子,自己上網搜一下,好的大公司都有自己的規範,這個不是規定死的,風格統一併且可讀性強即可。

重寫代碼之後,你再去看看別人提交的代碼,這個頁面是怎麼寫的,如果身邊有技術好的前端,可以讓他幫你指點一下。這時候你應該就知道如何寫一個頁面,並且怎樣才能寫好一個頁面了。然後你可以自己再去找幾個題目,寫幾個頁面熟練一下。

以上為階段一內容,用時 10 天左右。

CSS 進階:學習 CSS 核心內容不需要很多時間,但其實 CSS 是細節非常深的一個技術。前期不要陷入其中,那麼你會問如何深入學習 CSS 呢?我推薦一些很好的權威書籍,基本看這些就夠了。

《CSS 世界》:張鑫旭大神的書,十多年的 CSS 經驗分享,必買書籍。

《CSS 選擇器世界》:張鑫旭大神的另一力作,深入講解 CSS 選擇器。

《深入解析 CSS》:2020 年的新書,奇虎團工程師翻譯,質量有保證。

《CSS 揭秘》:各種 CSS 奇淫巧技,主要是來開闊視野。

《CSS 權威指南》:屬於 CSS 的新華字典,很全面,屬於一本工具書。

階段二:JavaScript

學習了 HTML 和 CSS,可以開始學習 JavaScript 了。這也是至關重要的階段。JavaScript 主要包括語言基礎(ECMAScript)、DOM 和 BOM 三部分,如果你是初學者,會想這到底是啥,咋還三個東西。那就開始學起來,學完你就知道啦,其實沒那麼難。

學習這部分,一定要從現代 JavaScript 教程學起:

現代 JavaScript 教程是 React 官方文檔中與 MDN 併列推薦的 JavaScript 學習教程。

這個教程解決了現存 JavaScript 書籍最大的痛點:實時性。技術領域的書籍在實時性上一直都存在很大的問題,而這個教程卻解決了這個問題。並且它為讀者搭建了良好的學習路線,由淺入深,內容足夠詳細也足夠全面,你就按著教程順序學習就行了。此外,每節內容後,還給出了高質量的課後習題和解析。通過做題可以幫你檢驗自己的學習效果,並鞏固新學到的知識。

教程地址:zh.javascript.info/

學完這個教程,你就其實已經學完了 JavaScript。你可能還聽說過 ES5/ES6/ES7/ES8……,其實你也已經學完了,而且還通過這個教程做了很多實戰的小例子。教程里還將技術點與實際應用聯繫起來,讓你知道這個知識點在實際開發中是如何使用的,它解決了什麼問題。

在學現代 JavaScript 教程的同時,我推薦你買基本權威書籍,其實這些書所講的大部分在教程里都有,不過可以相互補充取長補短,同時還可以鞏固知識點,加深你對 JavaScript 的理解:

《JavaScript 高級程式設計(第 3 版)》:俗稱紅寶書,只是這本書版本有些舊,第四版預計於 2020 年下半年出版,可以關註一下。這本書前七章講的是語言特性,一定要掌握。如果你有其他語言的編程基礎,理解起來會更快。第 8、10-14、20、21、23、24 章也要重點看,第 25 章的第一節也要看,其他沒提到的章節屬於非重點的擴展內容,有空就大概讀一下。至於 XML 這種過時的東西就不用看了,書中有大量 API 的章節,不用死記硬背,瀏覽一下就行,用到再回來查。你一定要先看《現代 JavaScript 教程》再看這本紅寶書,因為這裡的內容在教程中都有,而且都是最新的,紅寶書只是用於複習鞏固。

《JavaScript 權威指南》:俗稱犀牛書,和《CSS 權威指南》類似,都是大而全的工具書。

《ES6 標準入門》:你一定聽過 ES6 或者 ES2015 吧,其實指的是一個東西,就是 2015 年發佈的 ECMAScript 規範,發佈的一些語言特性。這本書是阮一峰老師的書,是學習 ES6 必買書籍,當然裡面也參雜了一些作者的個人理解。

《深入理解 ES6》:尼古拉斯大佬的力作,必買書籍!講解非常詳細且深入。

《深入理解 JavaScript 特性》:尼古拉斯大佬的最新書籍,由李松峰老師翻譯,主要講的也是 ES6 的內容。

《JavaScript DOM 編程藝術》:DOM 必備書籍,本書主要講的是 DOM 知識,還會帶你通過實戰深入理解相關知識,很有幫助。

《JavaScript 語言精粹》:俗稱蝴蝶書,很薄的一本,裡面講的都是 JavaScript 語言最核心的部分。半天就能看一遍,可以買了反覆看。

《Head First JavaScript 程式設計》:這本書對於沒有編程經驗的新手友好,內容比較簡單。

階段二用時一個半月左右。如果你有編程經驗,學起來會輕鬆一些。所列出的書不用全都看完,而是挑選重點,相互補充著看。對於 API 相關內容不要死記硬背,大概瀏覽即可,用到的時候再查,多些代碼就自然記住了。

階段三:入門前端框架

學完前端三大件,打好了大樹的根基,就可以開始擴展技能樹了,開始學習前端框架。前端的主流框架目前主要為 React,Vue 和 Angular。選擇哪個框架呢?你可以去知乎或者其他網站搜一搜,然後根據你的個人喜好進行選擇。一般是在 React 和 Vue 中選一個。React 的開發體驗更類似於寫原生的 JavaScript,要求你有較好的 JavaScript 基礎。Vue 則引入了模版,將很多實現封裝成了 API,你需要記住並調用 API 來進行開發,因為很多都是封裝好的,所以學習起來較為簡單,只是編程的感覺稍微弱了一些。

這兩個都是非常優秀的框架,新人不必糾結於選擇哪個框架,學了一個,另一個也很容易學。如果你不知道選擇哪個,我推薦你先學習 React。推薦的學習路線:

閱讀 React 官方文檔:先學習文檔中核心概念部分,然後跟著官方文檔寫出文檔中的井字棋。然後自己寫一個 Todo App。

然後學習慕課網 Dell 老師的React16.4  快速上手React16.4 開發簡書項目課程。

還可以繼續選一些百度前端技術學院里的經典題目來鞏固 JavaScript 的基礎知識和使用。

在這個過程中你會學到很多知識,會用到 React 的高階知識,那麼就把 React 官方文檔中的高級指引,API Reference,Hooks 等部分的內容學完。還會學到 React Router,Redux 等內容。會學到從零開發一個完整項目,從項目配置到組件拆分,到項目打包和上線的完整流程,還會學到 React 框架的一些底層源碼級知識。

如果你選擇了 Vue 框架,學習路線也類似:閱讀官方文檔,寫一些簡單的 Demo。然後學習慕課網 Dell 老師的Vue 2.5 入門Vue 2.5 -> 2.6 -> 3.0 開發去哪兒網 App 從零基礎入門到實戰項目開發課程,中間穿插做一些百度前端技術學院的典型題目鞏固 JavaScript 的基礎知識。

此階段用時一個月左右。至此你已經成功入門前端開發了,恭喜你

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1、coalesce函數的用法 1.1 取出第一個不為空的列的數據。 ​ 1.2 coalesce函數裡面的數據類型,必須全部都跟第一列的數據類型一致。 ​ 原因為第一個參數為數值,第二個參數為字元串;可通過轉換數據類型來使用,如下圖: ​ ...
  • 一、隱式Intent 1.如何配置 AndroidManifest.xml配置intent-filter內容 響應actioncom.example.activitytest.ACTION_START並且響應category才可以 在FirstActivity.java中進行設置Intent. 每個 ...
  • 前言: 這是許多矽谷公司用來衡量iOS候選人資歷水平的一系列問題。 這些問題涉及iOS開發的各個方面,旨在觸及對平臺的廣泛理解。 畢竟,高級開發人員應該能夠從頭到尾地發佈完整的iOS產品。 這絕不是一個詳盡的列表,但它可以幫助你為即將到來的技術iOS面試做準備。 目錄 你使用的最新版本的iOS是什麼 ...
  • Charles安裝 HTTP抓包 HTTPS抓包 1. Charles安裝 官網下載安裝Charles: https://www.charlesproxy.com/download/ 2. HTTP抓包 (1)查看電腦IP地址 (2)設置手機HTTP代理 手機連上電腦,點擊“設置->無線區域網->連 ...
  • 最近在這裡總結一些iOS開發中的小技巧,能大大方便我們的開發。 UITableView的Group樣式下頂部空白處理 //分組列表頭部空白處理 UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 0.1)]; self.t ...
  • 前端知識 web服務的本質: 基於B/S網路架構,瀏覽器和服務端的交互 瀏覽器發送請求,服務端接收請求,服務端響應請求,服務端吧HTML文件內容發給瀏覽器,瀏覽器渲染頁面 發送請求通過OSI網路七層模型:應用層,表示層,會話層,傳輸層,網路層,數據鏈路層,物理層 一、HTML介紹 html是超文本標 ...
  • 提到HTML標簽,我們會非常熟悉,開發中經常使用。但我們往往關註更多的是頁面渲染效果及交互邏輯,也就是對用戶可見可操作的部分,比如表單、菜單欄、列表、圖文等。其實還有一些非常重要卻容易忽視的標簽,這些標簽大多數用在頁面頭部head標簽內,雖然對用戶不可見,但如果在某些場景下,比如交互實現、性能優化、 ...
  • 基礎回顧1 查找元素位置 題目描述:找出元素 item 在給定數組 arr 中的位置 輸出描述: 如果數組中存在 item,則返回元素在數組中的位置,否則返回 -1 function indexOf(arr, item) { if(Array.prototype.indexOf) return ar ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...