Web開發初學指南
如果你正在閱讀這篇文章,你可能是對 Web 開發有某種興趣,甚至你開始想去學習 Web 開發。本文則展示了一個成為一個 Web 開發者可以遵循的途徑。作為一篇初學者指南,本文從學習什麼出發到如何專攻。或許對打算進軍 Web 開發的您有所幫助。
前端 VS 後端
或許你會覺得最初的缺口是前端和後端,所以讓我們先看下什麼是前端和後端。
前端
Web 應用按照客戶-服務體系結構分類為分散式應用。所以我們的程式碼有一部分執行於客戶端,還有一部分執行於服務端。執行於客戶端部分的應用(大多數情況下,客戶端是指我們的 Web 瀏覽器)被成為前端。最常見的用於前端開發的技術組合是 HTML+CSS+JavaScript。前端專家通常使用這些技術開發專業知識來建立 Web 應用的前端。
後端
後端開發者編寫執行於伺服器上的程式碼。通常情況下,這部分工作需要為讀/寫資料、讀/寫檔案、製作業務邏輯等連線資料庫。有些情況下,業務邏輯是駐留在客戶端的,這時客戶端通常以 Web 服務的形式被用以服務來自資料庫的資料。後端開發者通常精通於一種 Web 程式語言和一個資料庫管理系統。
你可以同時掌握前端和後端,當然從一般情況來講,Web 開發者更傾向於其中的一個,對另一個只做瞭解。專攻於一個的也大有人在。雖然兩者之間有一個分割線,但是對於哪一方應該做些什麼是沒有限制的。有時候前端僅用於視覺化表示,所有的工作都在後端完成。而有些時候後端只服務於資料,所有的計算和函式都位於前端。這是一種設計和結構的關係,以此來定義哪一方做什麼事情。
程式語言
目前有很多對 Web 開發可用的程式語言。當我們選擇前端的時候,事實上的標準語言是 JavaScript。當選擇後端時,可供選擇的就有很多了,下面列舉了一些流行的選擇:
- PHP
- JavaScript
- Ruby on Rails(與 Ruby 程式語言一起使用)
- ASP.NET(與 .net 程式語言一起使用)
- Java EE
- Python
這只是其中的一部分,你的選擇應基於一些因素的評估,如就業市場、Web 應用的託管環境,可提供的學習資源、可用的學習時間以及你四周的開發社群。
如果你想成為一個 Web 開發者,從個人角度來看最重要的因素應該是就業市場。你應該分析你所處在(或者你想要處在)的就業市場並且選擇有大量職位空缺的語言。另一個重要因素是託管環境,例如 PHP 託管要比 Java 託管便宜的多。如果你要開發一個將被託管於組織內部的內網應用,這時 Java EE 或許會是一個很好的選擇。但是如果你希望你的應用成為線上時,Java EE 相比其他語言可能就要昂貴的多了。
隨著 Node.js 的流行,JavaScript 開始成為一個受後端開發者歡迎的選擇。然而,它仍然是相當新的、不成熟的技術。所以不太建議初學 Web 開發的人學習。
從個人來看,PHP 擁有最簡單的學習曲線、廉價的託管環境、豐富的學習資源和相對容易的開發環境。這對初學者來說是個不錯的選擇。除此之外,ASP.NET 也是個不錯的選擇。微軟提供了很多的學習資源、免費的開發工具和一個相當豐富的環境。如果你喜歡微軟的生態系統,那麼你可以考慮 ASP.NET。
框架
如果你是一個初學者,給自己一些時間去學習一個框架。框架是簡化 Web 開發者工作的程式碼庫。框架賦予 Web 應用一個結構,這幫助開發者更容易的處理一些任務並且效率上比什麼都要自己編寫來的快。如果你想要成為一個專業的 Web 開發者,那麼就必須要學習至少一個框架,促進你的發展速度。
目前你可以學習的框架有很多,你必須評估你的需求。如果你選擇了 PHP,那麼建議你把 Laravel 作為一個選擇。如果你選的是 ASP.NET,那麼你可以選擇學習 ASP.NET MVC 和 EntityFramework。
Web 開發可以是巨大的,你可能想要專注於一種型別的應用。以 Web 網站的內容管理系統(CMS)為例,如果你選擇了 PHP,那麼建議你繼續使用 WorldPress。WorldPress 允許你建立網站、部落格,同時它也能夠通過預設外掛或自定義外掛和主題來擴充套件,以適應更加複雜的業務應用。
你將發現你選擇的任何一種語言背後都有大量的框架,所以基於你選擇的語言,你將和不同的框架打交道。
下一步
在第一個建議中,即使你選擇專攻於前端或後端,你也應該對另一端有所掌握。如果你這麼做了,你的團隊會表現的更好。如果你已經學習了一門語言,掌握了一種框架。或許你應該考慮重新開始一個,程式語言都有自己的理念和正規化,知道兩個或兩個以上的程式語言可以讓你對如何解決程式語言有一個更好的認知和理解,會使你成為一個更“流利地”開發者。正如前面所說的,你必須在選擇語言的時候考慮眾多因素。你可以在以後的道路中慢慢的擴充套件你的選擇清單。如果看文章的您是一位 Web 開發的大牛,也歡迎您在文章後面的評論中分享您在開發過程中所遇到的點點滴滴。(編譯:陳明)
相關文章
- 給初學者的Web安全指南Web
- 產品開發專案管理初學者指南專案管理
- Web 開發進階指南Web
- Go Web開發入坑指南GoWeb
- 初學Web前端開發,你需要掌握的11項技能Web前端
- 《Flask Web 開發指南 pt.2》FlaskWeb
- Kotlin初學者指南Kotlin
- Nginx初學者指南Nginx
- Groovy初學者指南
- WEB前端開發職業學習路線初級完整版Web前端
- 初學Web前端會用到開發工具(附官網下載地址)Web前端
- Web3 全棧開發完整指南Web全棧
- 【譯】GraphQL 初學者指南
- OAuth 2.0初學者指南OAuth
- Apache Hudi初學者指南Apache
- Web開發學習Web
- 初學者如何學Java開發?Java
- 初學Web前端開發,學會這幾個必殺技,薪資爆表!Web前端
- web前端學習指南Web前端
- Java初學者入門指南Java
- 初學者怎麼學Web前端?Web前端
- Spring Boot第五彈,WEB開發初瞭解~Spring BootWeb
- 2019 年 Web 開發技術指南和趨勢Web
- 初學web前端開發,你必要了解的基本概念與工具技術Web前端
- 圖資料庫初學者指南資料庫
- Electron 的初學者詳細指南
- 5S管理--初學者指南
- 學python可以做Web開發嗎?python適合Web開發嗎?PythonWeb
- 使用開源工具構建 DevOps 流水線的初學者指南開源工具dev
- 給 Web 開發人員的以太坊入坑指南Web
- 給Web開發人員的以太坊入坑指南Web
- 「真®全棧之路」Web前端開發的後端指南全棧Web前端後端
- 智汀雲盤-開發指南web:專案架構Web架構
- 【IOS開發初學者】UINavigationController詳解iOSUINavigationController
- 命令列應用開發初學者指南:腳手架篇、UI 庫和互動工具命令列UI
- Java工程師學習指南 初級篇Java工程師
- [譯] 網站優化初學者指南網站優化
- Java工程師學習指南(初級篇)Java工程師
- React Redux 的初學者詳盡指南ReactRedux