Web前端是什么?如何學(xué)?
時(shí)間:2023-09-28 08:18:01 | 來源:網(wǎng)站運(yùn)營
時(shí)間:2023-09-28 08:18:01 來源:網(wǎng)站運(yùn)營
Web前端是什么?如何學(xué)?:一、web前端是什么?
前端即網(wǎng)站前臺(tái)部分,運(yùn)行在PC端,移動(dòng)端等瀏覽器上展現(xiàn)給用戶瀏覽的網(wǎng)頁。隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,HTML5,CSS3,前端框架的應(yīng)用,跨平臺(tái)響應(yīng)式網(wǎng)頁設(shè)計(jì)能夠適應(yīng)各種屏幕分辨率,合適的動(dòng)效設(shè)計(jì),給用戶帶來極高的用戶體驗(yàn)。
前端技術(shù)一般分為前端設(shè)計(jì)和前端開發(fā),前端設(shè)計(jì)一般可以理解為網(wǎng)站的視覺設(shè)計(jì),前端開發(fā)則是網(wǎng)站的前臺(tái)代碼實(shí)現(xiàn),包括基本的HTML和CSS以及JavaScript/ajax,最新的高級版本HTML5、CSS3,以及SVG等。
HTML、CSS、JavaScript
這三個(gè)是前端開發(fā)中最基本也是最必須的三個(gè)技能。前端的開發(fā)中,在頁面的布局時(shí), HTML將元素進(jìn)行定義,CSS對展示的元素進(jìn)行定位,再通過JavaScript實(shí)現(xiàn)相應(yīng)的效果和交互。雖然表面看起來很簡單,但這里面需要掌握的東西絕對不會(huì)少。在進(jìn)行開發(fā)前,需要對這些概念弄清楚、弄明白,這樣在開發(fā)的過程中才會(huì)得心應(yīng)手。
HTML
指的是超文本標(biāo)記語言 (Hyper Text Markup Language),這個(gè)也是我們網(wǎng)頁最常用普通的語言了,經(jīng)歷了多個(gè)版本的發(fā)展,已經(jīng)發(fā)展到5.0版了,得力于W3C建立的標(biāo)準(zhǔn)和規(guī)范,已普遍升級到了XHTML,XHTML 指可擴(kuò)展超文本標(biāo)簽語言(EXtensible HyperText Markup Language), XHTML 于2000年的1月26日成為 W3C 標(biāo)準(zhǔn),是更嚴(yán)格更純凈的 HTML 代碼,XHTML 的目標(biāo)是取代 HTML。XHTML 與 HTML 4.01 幾乎是相同的,XHTML 是作為一種 XML 應(yīng)用被重新定義的 HTML,是一個(gè) W3C 標(biāo)準(zhǔn)。W3C 將 XHTML 定義為最新的HTML版本。所有新的瀏覽器都支持 XHTML。
CSS
級聯(lián)樣式表(Cascading Style Sheet)簡稱“CSS”,通常又稱為“風(fēng)格樣式表(Style Sheet)”,它是用來進(jìn)行網(wǎng)頁風(fēng)格設(shè)計(jì)的。比如,如果想讓鏈接字未點(diǎn)擊時(shí)是藍(lán)色的,當(dāng)鼠標(biāo)移上去后字變成紅色的且有下劃線,這就是一種風(fēng)格。通過設(shè)立樣式表,可以統(tǒng)一地控制HTML中各標(biāo)志的顯示屬性。級聯(lián)樣式表可以使人更能有效地控制網(wǎng)頁外觀。使用級聯(lián)樣式表,可以擴(kuò)充精確指定網(wǎng)頁元素位置,外觀以及創(chuàng)建特殊效果的能力。
JavaScript
是一種由Netscape的LiveScript發(fā)展而來的原型化繼承的面向?qū)ο蟮膭?dòng)態(tài)類型的區(qū)分大小寫的客戶端腳本語言,主要目的是為了解決服務(wù)器端語言,比如Perl,遺留的速度問題,為客戶提供更流暢的瀏覽效果。當(dāng)時(shí)服務(wù)端需要對數(shù)據(jù)進(jìn)行驗(yàn)證,由于網(wǎng)絡(luò)速度相當(dāng)緩慢,只有28.8kbps,驗(yàn)證步驟浪費(fèi)的時(shí)間太多。于是Netscape的瀏覽器Navigator加入了Javascript,提供了數(shù)據(jù)驗(yàn)證的基本功能。
二、web前端如何學(xué)?
1、編程工具
首先介紹一下編程工具,目前在市面上可以使用的編程工具很多,各種各樣,比如:sublime,webstrom,vs-code,HBuilder等,都是不錯(cuò)的選擇。在編程工具選用方面可以根據(jù)自己的喜好來決定,我個(gè)人比較喜歡使用vs-code,HBuilder這兩款工具。但是編程工具有代碼提示的功能,所以對于初學(xué)者,不是很建議使用上面的幾款編程工具,初學(xué)者對于代碼一定要自己能夠熟練的、完整的編寫出來,這里推薦另一款沒有代碼意識(shí)功能的,適合初學(xué)者的一款編程工具:EditPlus,每一款編程工具的安裝包可以自行要各自的官網(wǎng)下載安裝使用。
2、html+css+html5+css3
學(xué)習(xí)前端首先要學(xué)習(xí)的就是html+css+html5+css3 這些是前端比較的基礎(chǔ)的部分,難度系數(shù)較低,主要是一些標(biāo)簽和屬性的使用以及頁面布局的搭建。很多初學(xué)者學(xué)到這些知識(shí)點(diǎn)的時(shí)候可能就會(huì)比較的懷疑了??瓷先ザ际怯⑽膯卧~,我英語不好能夠?qū)W會(huì)嗎?這也是很多自學(xué)者在學(xué)習(xí)遇到困難的時(shí)候開始懷疑自己的一個(gè)地方。
但是做編程的朋友都知道,其實(shí)編程的代碼雖然是由英文字母組成的,但是和英語的關(guān)系真的不是很大,零基礎(chǔ)學(xué)會(huì)達(dá)到就業(yè)的水平,可以拋開英語的包袱。完全按照學(xué)習(xí)編程的思維邏輯來,html+css的英語單詞是多了一些,在理解的基礎(chǔ)上多去操作自然也能夠熟練。html5+css3主要是在html5和css3出世后在原來html+css基礎(chǔ)之上新增的一些新的特性。
如果初學(xué)者對自己的恒心和毅力比較擔(dān)心的話,也可以找一些同路人一起學(xué)習(xí),互相監(jiān)督,或者咨詢正規(guī)的培訓(xùn)機(jī)構(gòu),比如杭州北大青鳥等。
3、JavaScript
當(dāng)你把html+css+html5+css3都學(xué)完了,那么建議去找一些素材,多寫一些綜合性的靜態(tài)頁面鞏固練習(xí)自己對代碼的實(shí)踐操作能力。當(dāng)你能夠獨(dú)立的、很熟練的寫出一些綜合性的靜態(tài)頁面的時(shí)候。就可以學(xué)習(xí)下一個(gè)知識(shí)點(diǎn)JavaScript和ES了,但是在學(xué)習(xí)JavaScript的過程中不要忘了抽時(shí)間來回顧前面學(xué)過的知識(shí)點(diǎn)。千萬不要學(xué)了后面忘了前面。
JavaScript簡稱js,是前端比較核心的技術(shù)知識(shí)點(diǎn)了。也是很多初學(xué)者在學(xué)習(xí)前端的過程中的攔路虎,很多自學(xué)的人學(xué)到j(luò)s這里就學(xué)不下去了,放棄的很多。如果在看這篇文章的你學(xué)到這里感覺比較的難了,希望你堅(jiān)持,也祝愿你成功。
JavaScript在前端開發(fā)中是無處不在的,是前端技術(shù)的難點(diǎn)也是重點(diǎn)。雖然現(xiàn)在很多的企業(yè)開發(fā)中都是基于前端的主流技術(shù)框架在開發(fā)的,但是技術(shù)框架的底層實(shí)現(xiàn)原理依然是原生js。想要在技術(shù)上有一個(gè)大的提升,一定不要忘了原生js以及js的擴(kuò)展知識(shí)點(diǎn),比如ES6等。
4、JQuery和ajax
和學(xué)習(xí)html+css部分一樣的道理,當(dāng)你把js學(xué)完了之后一定要將js和前端學(xué)到的html+css+html5+css3相結(jié)合。做一些綜合性的案例練習(xí)。比如去寫一些綜合性的靜態(tài)網(wǎng)站之類的。學(xué)習(xí)編程一定要記住,實(shí)踐操作十分關(guān)鍵且重要。不要“一看就會(huì),一做就廢”。學(xué)習(xí)中一定要鍛煉自己獨(dú)立操作的能力。
當(dāng)你把JavaScript都學(xué)的很不錯(cuò)了,實(shí)踐應(yīng)用方面都練習(xí)的很好了,就可以繼續(xù)學(xué)習(xí)下一個(gè)知識(shí)點(diǎn),這個(gè)時(shí)候就要學(xué)習(xí)JQuery和ajax了,JQuery這個(gè)工具庫在前端的開發(fā)歷程上也是做出過很大的貢獻(xiàn)的。JQuery主要是在原生js基礎(chǔ)之上封裝的一個(gè)技術(shù)工具庫,在前端開發(fā)中也很有必要去學(xué)習(xí)一下的。前端技術(shù)發(fā)展到現(xiàn)在,很多人或許會(huì)認(rèn)為JQuery逐漸的用的比較的少了,是否被淘汰了,是不是可以不學(xué)習(xí)了呢。但并不是這樣的,我還是建議好好學(xué)習(xí)一下這個(gè)工具庫,JQuery的一些思想還是很不錯(cuò)的,況且在實(shí)際的開發(fā)中,會(huì)更具具體的需求做技術(shù)選型,多掌握一個(gè)技術(shù),對你以后的工作也會(huì)有很大的幫助。
Ajax主要是用于前后端數(shù)據(jù)交互的,在前后端分離開發(fā)的模式下,ajax顯的至關(guān)重要。雖然前后端數(shù)據(jù)交互的方式不止這一種,但是依然很有必要去學(xué)習(xí)并掌握。
5、樣式框架(bootstrap,elementUI,layUI)
每學(xué)習(xí)一個(gè)知識(shí)點(diǎn),我的建議都是一樣的,一定要花時(shí)間去綜合應(yīng)用,做一些實(shí)操練習(xí)。到了這里前端的知識(shí)點(diǎn)差不多學(xué)了一半了,后面主要就是一些技術(shù)框架了。這里首先建議大家可以學(xué)習(xí)一些樣式框架,比如bootstrap,elementUI,layUI……等。樣式框架主要是在html+css基礎(chǔ)之上的封裝。很多的樣式效果都是在這些框架里面封裝好了的。不用再去使用html+css的原代碼去調(diào),直接使用就可以的了。樣式框架的使用非常簡單,可以自行去參考對應(yīng)的官網(wǎng)學(xué)習(xí),這里不再贅述。
說到這里,相信很多人就會(huì)有疑問了,自然樣式框架都封裝好了,為何還要學(xué)習(xí)html+css+html5+css3這些基礎(chǔ)的知識(shí)點(diǎn)呢。在這里告訴大家一條定律“基礎(chǔ)不牢,地動(dòng)山搖”。僅僅使用樣式框架,把樣式框架研究的很透徹也能夠滿足基本的開發(fā)工作,現(xiàn)在在企業(yè)很多也是在使用框架在開發(fā)的。但是如果沒有基礎(chǔ),就是“知其然,不知其所以然”的狀態(tài)。對于自己以后在技術(shù)上的提升有很大的阻礙。況且樣式框架中封裝的樣式特性并不能滿足所有的需求。有些時(shí)候還是要根據(jù)需求去調(diào)。所以,基礎(chǔ)和框架都十分的重要,都要掌握。
6、vue全家桶
除了樣式框架之外,前端技術(shù)中還有很多的技術(shù)框架,這里介紹兩個(gè)比較主流的,在學(xué)習(xí)的過程中一定要重點(diǎn)掌握這個(gè)框架的使用。在學(xué)習(xí)兩個(gè)框架的時(shí)候一定要將webpack這個(gè)技術(shù)好好的掌握一下。熟練掌握這些技術(shù)的使用在就業(yè)和開發(fā)方面也會(huì)有很大的幫助。第一和要說的技術(shù)框架是VUE,這是目前比較的主流的前端技術(shù)框架的了。VUE是基于組件式的開發(fā)模式,非常受廣大編程人員的喜好。并且在開發(fā)行業(yè)迅速的被應(yīng)用起來。
7、react框架
要介紹的第二個(gè)前端技術(shù)框架,是react。這個(gè)技術(shù)框架現(xiàn)在在企業(yè)開發(fā)中也是使用率比較的高的。主要是在一些大企業(yè)中使用比較的常見。但是各企業(yè)在做技術(shù)選型的過程中會(huì)有差異。在企業(yè)中具體使用那一個(gè)技術(shù)框架開發(fā),要根據(jù)企業(yè)的需求來。
8、node.js
如果你是一個(gè)前端程序員,你不懂得像PHP、java等后端編程語言,然后你想創(chuàng)建自己的服務(wù),那么建議學(xué)習(xí)一下node.js,它將是一個(gè)不錯(cuò)的選擇。Node.js 是運(yùn)行在服務(wù)端的 JavaScript,如果你熟悉JavaSript,那么你將會(huì)很容易的學(xué)會(huì)Node.js。當(dāng)然,如果你是后端程序員,想部署一些高性能的服務(wù),那么學(xué)習(xí)Node.js也是一個(gè)非常好的選擇?,F(xiàn)在都是使用前后端分離開發(fā)的模式,學(xué)習(xí)node.js有有助于你很好的體會(huì)和理解前后端交互。
9、版本控制器(svn/git)
當(dāng)你把前面的8大內(nèi)容全部學(xué)會(huì)并掌握后,對于前端的技術(shù)知識(shí)點(diǎn),就差不多的了。但是在實(shí)際開發(fā)中,基本上都是一個(gè)團(tuán)隊(duì)協(xié)同開發(fā)的,那么在開發(fā)的過程中又怎么和開發(fā)團(tuán)隊(duì)的成員共享各自的代碼呢,這個(gè)時(shí)候就要學(xué)習(xí)一下項(xiàng)目的管理了。開發(fā)中通常會(huì)使用兩個(gè)版本控制器來解決這個(gè)問題,一個(gè)是svn是git,這兩個(gè)用任何一個(gè)即可。目前使用率比較高的一個(gè)是git,具體看在企業(yè)開發(fā)中開發(fā)團(tuán)隊(duì)的選擇。
10、小程序開發(fā)
當(dāng)你把前面9個(gè)模塊的知識(shí)點(diǎn)學(xué)完了之后,你認(rèn)為前端的技術(shù)就學(xué)完了嗎,偷偷告訴你,還沒有,技術(shù)都是在不斷的跟新的,學(xué)完了前面9個(gè)模塊的技術(shù)知識(shí)基本上可以滿足企業(yè)的基本開發(fā)需求。但是最近幾年又出現(xiàn)了一個(gè)非常熱門的技術(shù),就是小程序開發(fā)。小程序開發(fā)是比較有發(fā)展?jié)摿Φ囊粋€(gè)模塊。作為一個(gè)前端開發(fā)人員,掌握小程序的開發(fā)技術(shù)也是非常的有必要的。
三、學(xué)習(xí)web前端開發(fā)時(shí)需要注意什么?
第一,web前端基礎(chǔ)的重要性。
無論做什么都一定要有扎實(shí)的基礎(chǔ),學(xué)習(xí)web前端開發(fā)也不例外,只有基礎(chǔ)牢固,才能更深入的學(xué)習(xí)新技能。作為一名初級的web前端工程師,你必須要具備最基礎(chǔ)的技術(shù)要素:HTML,CSS和JavaScript。這是作為web前端工程師所必須要掌握的。web前端的入門門檻其實(shí)很低的,與其他語言先慢后快的學(xué)習(xí)節(jié)奏相比,他是一個(gè)先快后慢的過程。所以在前期的學(xué)習(xí)過程中,你會(huì)很容易的掌握其基礎(chǔ)的技能。而隨HTML5著技術(shù)的廣泛應(yīng)用,web前端的學(xué)習(xí)也會(huì)變得更加簡單。
第二,細(xì)節(jié)的重要性。
有句俗語是這樣說的:“細(xì)節(jié)決定成敗”,很多web前端開發(fā)者在工作過程中為了追求速度,而忽略了一些細(xì)節(jié)性的東西。比如:給代碼加備注,代碼的命名規(guī)范,代碼的簡潔等。所有的這些看似不重要,其實(shí)卻嚴(yán)重影響了項(xiàng)目的進(jìn)度以及自身能力的提升。在開發(fā)過程中,適當(dāng)?shù)奶砑觽渥?,能夠加深對技術(shù)點(diǎn)的印象,也便于以后在修改的過程中迅速查找;規(guī)范的代碼命名能夠方便團(tuán)隊(duì)之間的溝通,提高工作效率;而簡潔的代碼能夠直觀的展現(xiàn)某一塊代碼的作用。
第三,網(wǎng)站布局的重要性。
做網(wǎng)站的最終目的除了向大眾群體直觀的展現(xiàn)公司的形象以外,更重要的還是便于SEO優(yōu)化,為了提升網(wǎng)站在百度搜索引擎中的排名,以獲取更多的瀏覽量。因?yàn)榫W(wǎng)站沒有排名,不能讓更多的人了解到公司,盈利從何談起呢?作為一名web前端培訓(xùn)者,想要進(jìn)一步提升技能,就一定要研究網(wǎng)站的優(yōu)化布局。
最后,學(xué)習(xí)的重要性。
優(yōu)秀的web前端工程師之所以優(yōu)秀,不是因?yàn)楣ぷ鞯哪晗抻卸嗑?,而是具備快速學(xué)習(xí)的能力。web前端開發(fā)是一個(gè)特殊的工作,涵蓋的知識(shí)面非常廣,而且互聯(lián)網(wǎng)行業(yè)技術(shù)的更新速度是非??斓?,如果沒有快速學(xué)習(xí)的能力,就很難跟上時(shí)代的步伐。所以,作為web前端工程師一定要不斷的學(xué)習(xí),提升技能。
學(xué)習(xí)web前端是一個(gè)長久的過程,努力和堅(jiān)持是不可少的關(guān)鍵因素,祝大家都能夠?qū)W有所成!