沐鳴登錄網站_2018 Web 開發者最佳學習路線

作為一名 Android 開發者,伯特畢業后一直在從事相關開發工作,平時接觸最多的也是 Android 技術,但我一直在關注着大前端領域,也就是 Android/iOS + Web 前端。畢竟,大學時期使用 Html + CSS 做過靜態網頁,還會一點 iOS 開發,還是有一點底子的。但都好久沒碰,早已生疏了。

在我看來,技術都是相通的,工作上因各司其職可以分開,但就學習而言,不應該劃分界限。只有平時多接觸,才能提升你的編程編程思維和看問題的視野,而這,是不分領域和語言的。平時,我會關注其它領域都有什麼新的動態,保證自己緊跟互聯網發展趨勢,擁抱先進生產力,不至於脫節。

接下來,伯特就想與大家分享我在了解 Web 開發時看到的一張路線圖。該路線圖來自 Github 開源項目《developer-roadmap》,其早在 2017 年就分享出來了,最近一直在更新且活躍於 Github Trending。路線圖的內容,來自國外一位教授分享給他的學生的。主要包含四個方面:

  1. Web 開發的基礎技能;
  2. Web 前端;
  3. Web 後端;
  4. DevOps;

下面,分別展開介紹。

1.基礎技能和方向

首先,該路線圖向我們展示了 Web 開發所必需的技能,以及 Web 開發涉及的方向:

 

 

必需技能部分(左側),可以理解為通用的、基礎的技能,不管你選擇哪個方向都是通用的,包括但不限於 Git 使用、HTTP/HTTPS、數據結構和算法等。當然了,學習能力是必須具備的。

方向部分(中間),將 Web 開發分為 Web 前端和 Web 後端,後端往後還衍生出 DevOps。在這裏,我們可以將 Web 前端理解為用戶可見的前端頁面,是用戶直接交互的部分;而 Web 後端,就是提供前端所需的數據和響應邏輯;DevOps 可以理解為運維開發,具體後面再解釋。

2.Web 前端

接下來,就是 Web 前端(Front-end)路線圖。

 

 

從圖中可以看出,從一開始,我們就必須具備 HTML + CSS + JavaScript 技能,往後繼續深入,就需要我們圍繞基礎技能繼續深入學習,包括一些開發框架、常用工具和設計模式等。

3.Web 後端

而對於 Web 後端(Back-end),需要掌握的知識體系就更加複雜了:

 

 

作者補充說:

For the backend, personally I would prefer Node.js and PHP 7 for the full time. Plus, I have been experimenting lately with Go and I quite like it. Apart from these, if I have to choose another one, I would go for Ruby. However this is just my personal preference, you can choose any of the shown languages and you will be good.

可以看出,作者推薦使用 Node.js 和 PHP 7 作為主線。同時,Go 和 Ruby 也是不錯的選擇。當然,作者表示這隻是一家之言,你可以從路線圖中選擇任意一門你喜歡的語言,都可以做得很好。

比如,近期很火的 Python~

4.DevOps

最後,就是 DevOps 路線圖:

 

 

對於 DevOps ,大家或許會比較陌生,從字面上看,就是 “開發”與“運維”,一起來看看 Wikipedia 給出的定義:

DevOps(Development和Operations的組合詞)是一種重視“軟件開發人員(Dev)”和“IT運維技術人員(Ops)”之間溝通合作的文化、運動或慣例。透過自動化“軟件交付”和“架構變更”的流程,來使得構建、測試、發布軟件能夠更加地快捷、頻繁和可靠。

而實際上,可以把 DevOps 看作開發(軟件工程)、技運營和質量保障(QA)三者的交集:

 

 

總結

上述路線圖涉及的知識點是非常全面的,通過簡單的介紹,相信你對 Web 開發有了大體的認識,並對其所涉及的方向及基礎知識有所了解了。如果你選定了一個方向,並沿着路線圖展開學習,隨着學習的深入,你一定會對路線圖中的知識體系逐漸有自己的見解。

最後,附上 developer-roadmap 地址:

developer-roadmap

同時,有一份中文版的,但更新的有些脫節,你也可以參考下:

developer-roadmap-zh-CN