十年web前端開發工程師告訴你怎樣零基礎入門

隨著web前端的飛速發展,學習web前端的人員也是越來越多,在移動 互聯網 時代,相信我們每個人的手機上都裝有數十個APP,這些APP的開發其實也和當下熱門的 Web 前端開發息息相關。

事實上,如今一半以上的APP都是採用Hybrid混合模式開發,即結合安卓和Web端技術開發。而純 Web開發 的APP也不在少數,比如我們眾所周知的 QQ 空間就是使用 Web前端 的React Native技術開發。除了APP,我們在手機端常看到的H5頁面,也是主要運用了Web端的 HTML5 技術開發。 當然,Web前端現在也不僅僅局限於前端網頁和APP,伺服器端、桌面級應用甚至是VR都有涉及。

一 今天主要講一下Web前端開發所需要的知識技能及學習路徑

1. HTML5 + CSS3 + JavaScript

Web開發基礎中的基礎,HTML是負責網頁結構,CSS負責網頁樣式,JS則負責邏輯交互。前兩者更像是標記語言,沒有什麼邏輯,JS才是前端的重中之重。 HTML5 新增的技術大部分需要結合JS學習。

每個人學習進度可能不同,這個階段主要是多仿站,熟悉基礎,試試用CSS寫響應式頁面,了解JS深入性的知識,比如原型鏈、閉包、 設計模式 等需要更多的積累,逐漸理解並實踐掌握。

2. JQuery + BootStrap + Ajax + Json

jQuery是JS的一個應用庫,能夠提升原生JS開發效率。Bootstrap則是響應式框架,更簡單的實現手機/平板/PC多個設備的頁面支持。Ajax技術用於非同步交互,不刷新頁面就能更新數據,比如 地圖 應用等。Json是一種數據格式,被廣泛應用在各大編程語言中。

jQuery 和 bootstrap 會簡化很多編寫的代碼量,用著不亦樂乎,但對於基礎還不是很紮實的人建議還是少用。 Ajax 和 json 通常用於和後端交互,在實際業務中也經常用到。

3. Git/SVN

版本管理工具,主要用於團隊開發時避免文件衝突,也可回檔。前端推薦學習Git。

4. Nodejs + Mysql /MongoDB(可選)

運行在伺服器端的JavaScript。Express是其拓展MVC框架。其中nodejs最常用到的就是npm包管理器,不用到各個網站去下載資源包。 資料庫 的學習可以選擇MongoDB或者MySQL,前者與Nodejs的契合度更好,不過現在大多數網站都是 PHP +Mysql的組合,如果有學PHP的打算的話,可以先學習 Mysql 。

5. ECMAScript 6

JavaScript 的語言標準。ES6中加入了很多新的概念,也彌補了之前版本中JS的很多缺陷,越來越多的項目開始運用ES6進行開發。學之前最好把ES5先搞懂了,目前實際項目中考慮到兼容性,ES6是需要通過Babel將其編譯為ES5來部署的。

6. Angular/React/Vue

前端三大框架,各自也有著各自的生態系統,根據需求自行選擇學習。目前企業需求量最大的仍然是Angular,但近期趨勢來看react和vue則更受歡迎。因為現在前端技術發展太過於突飛猛進,工具和框架的更新比翻書還快,建議學習還是看文檔比較好。學習過程中也會遇到很多用到各種構建工具的時候。

7. 其他常用工具

這個一樣是根據需求自行選擇學習。比較常用的現在有 Web pack,可以將多個不同編程風格的文件打包,比如ES6/AMD/CMD之類的模塊化都能識別並編譯成 瀏覽器 能運行的文件。Sass/Less,CSS預編譯框架,可以用帶有邏輯性的方式編寫CSS代碼。Gulp/Grunt構建工具,可以自動化對代碼進行壓縮合併等工作。

8. 其他後端編程語言

目前市場對前端基本都要求會一門後端語言, PHP / JAVA / Nodejs / Python 等。

學習編程重要的還是實踐,多敲代碼,多去嘗試。獨立解決問題的能力、探究鑽研的精神是必不可少的。有興趣的話也可以自己搭建一個技術 博客 ,往 github 上傳幾個 開源 項目,這些都是不錯的加分點。

一名優秀的 程序員 ,不僅僅是 程序員 。

學習前端書籍自然不可少,這裡給大家推薦《html 5與 css 3權威指南》,雖然主要是講解html5+css3,但倒也是一本好的入門書籍。該書比較系統,覆蓋面也比較廣。技術新穎,所有知識點都緊跟 html 5與css 3的最新發展動態(html 5和css 3仍在不斷完善之中);也有比較強的實戰性(包含246個示例頁面),不僅每個知識點都 配有精心設計的小案例(便於動手實踐),配合案例,也比較生動有趣。該書不僅能滿足你全面而系統地學習理論知識的需求,還能滿足你需要充分實踐的需求。

Web前端學習小建議

這裡跟大家扯一扯學習前端的小方法,是我自己的學習方法,大家湊合看看,倒也不一定對~

在寫css前,其實html的結構要是比較合理的,這樣寫css也會比較順手。在寫一個網頁之前,建議先琢磨幾分鐘,不要上來就寫。多去看看別人是怎麼寫的,然後結合自己的項目,心中有一個大致規劃。可以先把最外層輪廓寫好,先不著急去寫某一個具體的部分。

這裡給大家分享一些小技巧:

1、使用reset.css

火狐和IE這兩種不同的瀏覽器,在繪製CSS樣式方法上截然不同。這種情況下,使用reset.css重置所有的基本樣式會讓你得到一個全新的空樣式表。(可以去網上找一下,很多的)

2、CSS縮寫

CSS縮寫簡化了你的CSS代碼,更重要的是,它讓你的代碼更加整潔易懂。

不是像這樣創建CSS

.header {

background-color: #fff;

background-image: url(image.gif);

background-repeat: no-repeat;

background-position: top left;

}

而是像這樣創建CSS

.header {

background: #fff url(image.gif) no-repeat top left

}

3、理解class和id

這兩個選擇器總是讓初學者感到迷惑。在CSS中,Class和ID分別用點「.」和井號「#」來標識。簡單來說id就是用來標識那些單獨不重複的樣式,而class是可以重複使用的。

4、實用的<li>

<li>也叫鏈接列表,在與<ol>或<ul>正確搭配的時候非常好用,尤其是用在導航菜單樣式上。

5、少用<table>多用<div>

CSS最大的優勢之 一是使用<div>達到樣式上的靈活多變。不同於<table>,<div>里的內容不會 被鎖在單元 格<td>中。可以說幾乎所有的表格布局都可以在<div>和樣式的正確使用下完成。當然,有大量表格內容時,還是 用 <table>吧。

6、CSS調試工具

在設計CSS時,能夠得到頁面布局的預覽對於優化CSS樣式和糾錯是很有幫助的。這裡有一些免費的CSS調試工具推薦給你,你可以把它裝在瀏覽器上:比如FireFox Web Developer、DOM Inspector、Firebug等

7、!Important

所有被!important 標記的樣式,即使它後來被重寫,瀏覽器也只會採用被標記的那條。

.page {

background-color:blue !important;

background-color:red;

}

比如上面的例子,因為background-color:blue 被標記為!important ,即使後來有把背景改成紅色的語句,也只採用被標記的那條。!important 用來強制使一個樣式避免在之後的編碼中被修改,遺憾的是IE不支持。

牢記以上小技巧,也許你的css技能突然就起飛了呢?

關於javascript的一些小技巧,下次我再整理給大家~一次性看太多,大家是不是也有點暈?

學習前端需要方法,更需要一顆平常心,不要把前端想的多難,需要吃什麼苦。。。既然學習這麼痛苦,為什麼不快樂一點學呢?

anyway~希望大家可以成為一個優秀的前端er!

推薦閱讀:

從process.versions了解Node.js的構成
實現符合 Promise/A+ 規範的Promise
現代 CSS 進化史
OSI-TCP/IP協議族
web前端:如何(安全地)使用Vue.js的jQuery插件

TAG:前端工程師 | 前端開發 | 前端入門 |