所有這些可見的站點(diǎn)界面和特效都是通過前端開發(fā)構(gòu)建的(有時(shí)也稱為“前端Web開發(fā)”)。前端開發(fā)人員是一些最受歡迎的角色,目前各大知名互聯(lián)網(wǎng)公司的前端開發(fā)人員的工資水平甚至超過了后端開發(fā)人員
雖然網(wǎng)頁設(shè)計(jì)是網(wǎng)站的外觀,但前端開發(fā)是將該設(shè)計(jì)的頁面通過代碼的形式在網(wǎng)絡(luò)上進(jìn)行展現(xiàn),并加入一些功能特效 !使之具有一定的交互性!
前端Web開發(fā)人員是通過HTML,CSS和JavaScript等編碼語言實(shí)現(xiàn)Web設(shè)計(jì)的人。雖然它不再那么常見,但是前端開發(fā)人員有時(shí)被稱為“客戶端開發(fā)人員”,以區(qū)別于后端開發(fā)人員,后端是對數(shù)據(jù)庫等幕后工作進(jìn)行編程。如果您前往任何站點(diǎn),您可以在導(dǎo)航,布局(包括此文章頁面)中查看前端開發(fā)人員的工作,甚至可以看到PC頁面與手機(jī)頁面不同的展現(xiàn)方式。
前端Web開發(fā)人員使用三種主要編碼語言來編寫由Web設(shè)計(jì)人員創(chuàng)建的網(wǎng)站和Web應(yīng)用程序設(shè)計(jì):
他們編寫的代碼在用戶的瀏覽器中運(yùn)行(而不是后端開發(fā)人員,其代碼在Web服務(wù)器上運(yùn)行)。想想它有點(diǎn)像這樣:后端開發(fā)人員就像設(shè)計(jì)和創(chuàng)建使城市工作的系統(tǒng)(電力,水和下水道,分區(qū)等)的工程師,而前端開發(fā)人員就是那個(gè)人走出街道,確保一切都正常連接,這樣人們就可以過上自己的生活(一個(gè)簡單的類比,但你得到了粗略的想法)。前端Web開發(fā)人員還負(fù)責(zé)確保前端沒有錯(cuò)誤或錯(cuò)誤,并確保設(shè)計(jì)出現(xiàn)在各種平臺和瀏覽器中。
HTML(超文本標(biāo)記語言)和CSS(層疊樣式表)是Web編碼的最基本構(gòu)建塊。沒有這兩件事,你就無法創(chuàng)建一個(gè)網(wǎng)站設(shè)計(jì),而你最終得到的只是屏幕上沒有格式化的純文本。如果沒有HTML,您甚至無法將圖像添加到頁面中!
在開始任何Web開發(fā)職業(yè)生涯之前,您必須掌握HTML和CSS編碼。好消息是,可以在短短幾周內(nèi)完成其中任何一項(xiàng)的扎實(shí)工作知識。
JavaScript允許您為網(wǎng)站添加更多功能,并且您可以使用HTML,CSS和JavaScript(簡稱JS)創(chuàng)建許多基本W(wǎng)eb應(yīng)用程序。在最基本的層面上,JS用于創(chuàng)建和控制諸如實(shí)時(shí)更新的地圖,交互式電影和在線游戲等內(nèi)容。像Pinterest這樣的網(wǎng)站大量使用JavaScript來使他們的用戶界面易于使用(事實(shí)上,只要你固定頁面就不會重新加載頁面,這要?dú)w功于JavaScript?。?/div>
它也是世界上最流行的編程語言,所以不管你的開發(fā)職業(yè)規(guī)劃如何,這都是一個(gè)非常有價(jià)值的東西。
3. jQuery
jQuery是一個(gè)JavaScript庫:一組插件和擴(kuò)展,可以更快,更輕松地使用JavaScript進(jìn)行開發(fā)。jQuery不是必須從頭開始編寫所有代碼,而是讓前端Web開發(fā)人員為項(xiàng)目添加現(xiàn)成元素,然后根據(jù)需要進(jìn)行自定義(知道JavaScript如此重要的一個(gè)原因)。您可以將jQuery用于倒計(jì)時(shí)器,搜索表單自動(dòng)完成,甚至自動(dòng)重新排列和調(diào)整網(wǎng)格布局。
4. JavaScript框架
JS框架(包括AngularJS,Backbone,Ember和ReactJS)為您的JavaScript代碼提供了現(xiàn)成的結(jié)構(gòu)。有不同類型的JavaScript框架可以滿足不同的需求,盡管提到的四個(gè)是實(shí)際工作列表中最受歡迎的。這些框架通過為您提供快速入門真正加速了開發(fā),并且可以與jQuery等庫一起使用,以最大限度地減少您必須執(zhí)行的編程。
5. 前端框架
CSS和前端框架(最受歡迎的前端框架是Bootstrap)為CSS框架做了JS框架為JavaScript做的事情:它們?yōu)槟峁┝烁炀幋a的起點(diǎn)。由于如此多的CSS從項(xiàng)目到項(xiàng)目的完全相同的元素開始,所以為您預(yù)先定義所有這些元素的框架是非常有價(jià)值的。大多數(shù)前端開發(fā)人員工作列表都希望您熟悉這些框架的工作方式以及如何使用它們。
6. CSS預(yù)處理器的經(jīng)驗(yàn)
預(yù)處理器是前端開發(fā)人員可以用來加速CSS編碼的另一個(gè)元素。CSS預(yù)處理器為CSS添加了額外的功能,以保持CSS的可擴(kuò)展性和易用性。它會在您將代碼發(fā)布到您的網(wǎng)站之前對其進(jìn)行處理,并將其轉(zhuǎn)換為格式良好且跨瀏覽器友好的CSS。根據(jù)實(shí)際工作清單,SASS和LESS是兩個(gè)最受歡迎的預(yù)處理器。
7. 具有RESTful服務(wù)和API的經(jīng)驗(yàn)
在沒有太過技術(shù)性的情況下,REST代表Representational State Transfer。從基本的角度來說,它是一種輕量級架構(gòu),可簡化Web上的網(wǎng)絡(luò)通信,RESTful服務(wù)和API是遵循REST架構(gòu)的Web服務(wù)。在此處閱讀有關(guān)REST和RESTful服務(wù)的更多信息。
假設(shè)您想編寫一個(gè)應(yīng)用程序,按照您成為朋友的順序向您顯示所有社交媒體朋友。您可以調(diào)用Facebook的RESTful API來讀取您的好友列表并返回該數(shù)據(jù)。Twitter也是如此(它也使用RESTful API)。對于使用RESTful API的任何服務(wù),一般過程都是相同的,只是返回的數(shù)據(jù)會有所不同。
雖然這聽起來非常復(fù)雜和技術(shù)性,但它是一套簡單的指導(dǎo)方針和實(shí)踐,可以設(shè)定期望,讓您知道如何與Web服務(wù)進(jìn)行通信。它們還使Web服務(wù)性能更好,擴(kuò)展性更好,工作更可靠,更易于修改或移動(dòng)。
8. 響應(yīng)式和移動(dòng)設(shè)計(jì)
僅在中國,更多人通過移動(dòng)設(shè)備訪問互聯(lián)網(wǎng)而不是臺式電腦,因此難怪響應(yīng)和移動(dòng)設(shè)計(jì)技能對雇主來說非常重要。響應(yīng)式設(shè)計(jì)意味著網(wǎng)站的布局(有時(shí)功能和內(nèi)容)會根據(jù)用戶使用的屏幕尺寸和設(shè)備而發(fā)生變化。
例如,當(dāng)從具有大顯示器的臺式計(jì)算機(jī)訪問網(wǎng)站時(shí),用戶將獲得專門為鼠標(biāo)和鍵盤用戶創(chuàng)建的多列,大圖形和交互。在移動(dòng)設(shè)備上,同一網(wǎng)站將顯示為針對觸摸交互進(jìn)行優(yōu)化的單個(gè)列,但使用相同的基本文件。
移動(dòng)設(shè)計(jì)可以包括響應(yīng)式設(shè)計(jì),但也包括創(chuàng)建單獨(dú)的移動(dòng)專用設(shè)計(jì)。有時(shí),您希望用戶在臺式計(jì)算機(jī)上訪問您的網(wǎng)站時(shí)獲得的體驗(yàn)與您希望他們從智能手機(jī)訪問時(shí)看到的體驗(yàn)完全不同,在這種情況下,移動(dòng)網(wǎng)站完全不同是有意義的。例如,擁有網(wǎng)上銀行的銀行網(wǎng)站將受益于一個(gè)單獨(dú)的移動(dòng)網(wǎng)站,該網(wǎng)站允許用戶查看最近的銀行位置和簡化的帳戶視圖(因?yàn)橐苿?dòng)屏幕較?。?/div>
對web前端這門技術(shù)感興趣的小伙伴可以加入到我們的學(xué)習(xí)圈來,編程工作第六個(gè)年頭了,與大家分享一些學(xué)習(xí)方法,實(shí)戰(zhàn)開發(fā)需要注意的細(xì)節(jié)。784-783-012 秋裙。從零基礎(chǔ)開始怎么樣學(xué)好前端??纯辞拜厒兪侨绾卧诰幊痰氖澜缋锇寥磺靶校〔煌8伦钚碌慕坛毯蛯W(xué)習(xí)方法(web前端系統(tǒng)學(xué)習(xí)路線,詳細(xì)的前端項(xiàng)目實(shí)戰(zhàn)教學(xué)視頻,PDF),有想學(xué)習(xí)web前端的,或是轉(zhuǎn)行,或是大學(xué)生,還有工作中想提升自己能力的,正在學(xué)習(xí)的小伙伴歡迎加入。我們會一起結(jié)伴同行
9. 跨瀏覽器開發(fā)
現(xiàn)代瀏覽器在一致地顯示網(wǎng)站方面已經(jīng)相當(dāng)不錯(cuò),但是他們在幕后如何解釋代碼仍然存在差異。在所有現(xiàn)代瀏覽器與Web標(biāo)準(zhǔn)完美配合之前,了解如何使每個(gè)瀏覽器按照您希望的方式工作是一項(xiàng)重要技能。這就是跨瀏覽器開發(fā)的全部意義所在。
10. 測試和調(diào)試
對于前端Web開發(fā)人員來說,這是一個(gè)事實(shí):錯(cuò)誤發(fā)生。熟悉測試和調(diào)試過程至關(guān)重要。
單元測試是測試單個(gè)源代碼塊的過程(指示網(wǎng)站應(yīng)該如何工作的指令),單元測試框架提供了一種特定的方法和結(jié)構(gòu)(每種編程語言都有不同的方法和結(jié)構(gòu))。
另一種常見的測試類型是UI測試(也稱為驗(yàn)收測試,瀏覽器測試或功能測試),您可以檢查以確保網(wǎng)站在用戶實(shí)際在網(wǎng)站上執(zhí)行操作時(shí)的行為。您可以編寫測試,在執(zhí)行操作后在頁面上查找特定HTML等內(nèi)容(例如,確保如果用戶忘記填寫所需的表單字段,則會彈出表單錯(cuò)誤框)。
調(diào)試只是將這些測試發(fā)現(xiàn)的所有“錯(cuò)誤”(錯(cuò)誤)發(fā)現(xiàn)(或者一旦您的網(wǎng)站啟動(dòng)就會發(fā)現(xiàn)您的用戶),戴上您的偵探帽,找出原因和方法,并解決問題。不同的公司使用略有不同的流程,但如果您使用過程,您可以很容易地適應(yīng)其他人。
11. 學(xué)會使用Git
通過版本控制系統(tǒng),您可以跟蹤隨著時(shí)間的推移對代碼所做的更改。如果你搞砸了,它們也可以很容易地恢復(fù)到早期版本。所以,假設(shè)您添加了一個(gè)自定義的jQuery插件,突然有一半的其他代碼中斷了。您可以回滾到以前的版本,然后使用其他解決方案再次嘗試,而不是必須加密手動(dòng)撤消它并修復(fù)所有錯(cuò)誤。
Git是這些版本控制管理系統(tǒng)中使用最廣泛的。了解如何使用Git幾乎可以滿足任何開發(fā)工作的需求。這是開發(fā)人員需要具備的重要工作技能之一,但實(shí)際上很少有人談?wù)撨@些技能。
12. 解決問題的能力
如果所有前端開發(fā)人員都必須擁有一件事,無論職位描述或官方職稱如何,這都是出色的解決問題的能力。從確定如何最好地實(shí)現(xiàn)設(shè)計(jì),到修復(fù)出現(xiàn)的錯(cuò)誤,到如何使前端代碼與正在實(shí)現(xiàn)的后端代碼一起工作,開發(fā)就是解決創(chuàng)造性問題。
假設(shè)您已經(jīng)創(chuàng)建了一個(gè)功能完善的網(wǎng)站前端,并將其交給后端開發(fā)人員,以便他們將其與內(nèi)容管理系統(tǒng)集成。突然間,你的一半功能停止工作。一個(gè)優(yōu)秀的前端開發(fā)人員會將此視為一個(gè)需要解決的難題,而不是一場災(zāi)難。當(dāng)然,優(yōu)秀的高級前端開發(fā)人員會預(yù)見到這些問題,并首先嘗試預(yù)防這些問題!
接下來是什么?
以上就是前端web開發(fā)需要學(xué)習(xí)和掌握的全部技能!興趣是學(xué)習(xí)的動(dòng)力,光學(xué)習(xí)這些還不夠,在編程的世界里,不是一勞永逸,程序員是終身學(xué)習(xí)的行業(yè),共勉!