什么是web前端工程師?
前端工程師是互聯(lián)網(wǎng)時(shí)代軟件產(chǎn)品研發(fā)中不可缺少的一種專(zhuān)業(yè)研發(fā)角色。從狹義上講,前端工程師使用 HTML、CSS、JavaScript 等專(zhuān)業(yè)技能和工具將產(chǎn)品UI設(shè)計(jì)稿實(shí)現(xiàn)成網(wǎng)站產(chǎn)品,涵蓋用戶(hù)PC端、移動(dòng)端網(wǎng)頁(yè),處理視覺(jué)和交互問(wèn)題。從廣義上來(lái)講,所有用戶(hù)終端產(chǎn)品與視覺(jué)和交互有關(guān)的部分,都是前端工程師的專(zhuān)業(yè)領(lǐng)域。
一個(gè)前端工程師需要學(xué)什么?
1、HTML、CSS、HTML5、CSS3
HTML(超文本標(biāo)記語(yǔ)言)和CSS(層疊樣式表)是Web編碼的最基本構(gòu)建塊。沒(méi)有這兩件事,你就無(wú)法創(chuàng)建一個(gè)網(wǎng)站設(shè)計(jì),而你最終得到的只是屏幕上沒(méi)有格式化的純文本。如果沒(méi)有HTML,您甚至無(wú)法將圖像添加到頁(yè)面中!在開(kāi)始任何Web開(kāi)發(fā)職業(yè)生涯之前,您必須掌握HTML和CSS編碼。
2、JavaScript
JavaScript允許您為網(wǎng)站添加更多功能,并且您可以使用HTML,CSS和JavaScript(簡(jiǎn)稱(chēng)JS)創(chuàng)建許多基本W(wǎng)eb應(yīng)用程序。在最基本的層面上,JS用于創(chuàng)建和控制諸如實(shí)時(shí)更新的地圖,交互式電影和在線游戲等內(nèi)容。像Pinterest這樣的網(wǎng)站大量使用JavaScript來(lái)使他們的用戶(hù)界面易于使用。
3、jQuery
jQuery是一個(gè)JavaScript庫(kù):一組插件和擴(kuò)展,可以更快,更輕松地使用JavaScript進(jìn)行開(kāi)發(fā)。jQuery不是必須從頭開(kāi)始編寫(xiě)所有代碼,而是讓前端Web開(kāi)發(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)。有不同類(lèi)型的JavaScript框架可以滿(mǎn)足不同的需求,盡管提到的四個(gè)是實(shí)際工作列表中最受歡迎的。這些框架通過(guò)為您提供快速入門(mén)真正加速了開(kāi)發(fā),并且可以與jQuery等庫(kù)一起使用,以最大限度地減少您必須執(zhí)行的編程。
5、前端框架
CSS和前端框架(最受歡迎的前端框架是Bootstrap)為CSS框架做了JS框架為JavaScript做的事情:它們?yōu)槟峁┝烁炀幋a的起點(diǎn)。由于如此多的CSS從項(xiàng)目到項(xiàng)目的完全相同的元素開(kāi)始,所以為您預(yù)先定義所有這些元素的框架是非常有價(jià)值的。大多數(shù)前端開(kāi)發(fā)人員工作列表都希望您熟悉這些框架的工作方式以及如何使用它們。
6、CSS預(yù)處理器的經(jīng)驗(yàn)
預(yù)處理器是前端開(kāi)發(fā)人員可以用來(lái)加速CSS編碼的另一個(gè)元素。CSS預(yù)處理器為CSS添加了額外的功能,以保持CSS的可擴(kuò)展性和易用性。它會(huì)在您將代碼發(fā)布到您的網(wǎng)站之前對(duì)其進(jìn)行處理,并將其轉(zhuǎn)換為格式良好且跨瀏覽器友好的CSS。根據(jù)實(shí)際工作清單,SASS和LESS是兩個(gè)最受歡迎的預(yù)處理器。
7、具有RESTful服務(wù)和API的經(jīng)驗(yàn)
在沒(méi)有太過(guò)技術(shù)性的情況下,REST代表Representational State Transfer。從基本的角度來(lái)說(shuō),它是一種輕量級(jí)架構(gòu),可簡(jiǎn)化Web上的網(wǎng)絡(luò)通信,RESTful服務(wù)和API是遵循REST架構(gòu)的Web服務(wù)。
8、學(xué)響應(yīng)式和移動(dòng)設(shè)計(jì)
目前90%以上的人都是通過(guò)移動(dòng)設(shè)備訪問(wèn)互聯(lián)網(wǎng)而不是臺(tái)式電腦,因此難怪響應(yīng)和移動(dòng)設(shè)計(jì)技能對(duì)雇主來(lái)說(shuō)非常重要。響應(yīng)式設(shè)計(jì)意味著網(wǎng)站的布局(有時(shí)功能和內(nèi)容)會(huì)根據(jù)用戶(hù)使用的屏幕尺寸和設(shè)備而發(fā)生變化。
當(dāng)從具有大顯示器的臺(tái)式計(jì)算機(jī)訪問(wèn)網(wǎng)站時(shí),用戶(hù)將獲得專(zhuān)門(mén)為鼠標(biāo)和鍵盤(pán)用戶(hù)創(chuàng)建的多列,大圖形和交互。在移動(dòng)設(shè)備上,同一網(wǎng)站將顯示為針對(duì)觸摸交互進(jìn)行優(yōu)化的單個(gè)列,但使用相同的基本文件。
移動(dòng)設(shè)計(jì)可以包括響應(yīng)式設(shè)計(jì),但也包括創(chuàng)建單獨(dú)的移動(dòng)專(zhuān)用設(shè)計(jì)。有時(shí),您希望用戶(hù)在臺(tái)式計(jì)算機(jī)上訪問(wèn)您的網(wǎng)站時(shí)獲得的體驗(yàn)與您希望他們從智能手機(jī)訪問(wèn)時(shí)看到的體驗(yàn)完全不同,在這種情況下,移動(dòng)網(wǎng)站完全不同是有意義的。
9、學(xué)跨瀏覽器開(kāi)發(fā)
現(xiàn)代瀏覽器在一致地顯示網(wǎng)站方面已經(jīng)相當(dāng)不錯(cuò),但是他們?cè)谀缓笕绾谓忉尨a仍然存在差異。在所有現(xiàn)代瀏覽器與Web標(biāo)準(zhǔn)完美配合之前,了解如何使每個(gè)瀏覽器按照您希望的方式工作是一項(xiàng)重要技能。這就是跨瀏覽器開(kāi)發(fā)的全部意義所在。
10、學(xué)測(cè)試和調(diào)試
對(duì)于前端Web開(kāi)發(fā)人員來(lái)說(shuō),這是一個(gè)事實(shí):錯(cuò)誤發(fā)生。熟悉測(cè)試和調(diào)試過(guò)程至關(guān)重要。單元測(cè)試是測(cè)試單個(gè)源代碼塊的過(guò)程(指示網(wǎng)站應(yīng)該如何工作的指令),單元測(cè)試框架提供了一種特定的方法和結(jié)構(gòu)(每種編程語(yǔ)言都有不同的方法和結(jié)構(gòu))。
另一種常見(jiàn)的測(cè)試類(lèi)型是UI測(cè)試(也稱(chēng)為驗(yàn)收測(cè)試,瀏覽器測(cè)試或功能測(cè)試),您可以檢查以確保網(wǎng)站在用戶(hù)實(shí)際在網(wǎng)站上執(zhí)行操作時(shí)的行為。您可以編寫(xiě)測(cè)試,在執(zhí)行操作后在頁(yè)面上查找特定HTML等內(nèi)容。
11、學(xué)會(huì)使用Git
通過(guò)版本控制系統(tǒng),您可以跟蹤隨著時(shí)間的推移對(duì)代碼所做的更改。如果你搞砸了,它們也可以很容易地恢復(fù)到早期版本。所以,假設(shè)您添加了一個(gè)自定義的jQuery插件,突然有一半的其他代碼中斷了。您可以回滾到以前的版本,然后使用其他解決方案再次嘗試,而不是必須加密手動(dòng)撤消它并修復(fù)所有錯(cuò)誤。
Web前端工程師崗位職責(zé)和要求是什么?
崗位職責(zé):
1、根據(jù)業(yè)務(wù)需求文檔完成前端研發(fā)工作;與后端研發(fā)人員配合,討論交互方式,頁(yè)面集成工作;完成現(xiàn)有系統(tǒng)的維護(hù)工作,完成相關(guān)的迭代優(yōu)化工作;
2、根據(jù)系統(tǒng)平臺(tái)的業(yè)務(wù)需求,完成前端架構(gòu),并編制相關(guān)的前端規(guī)范等技術(shù)文檔,網(wǎng)頁(yè)標(biāo)準(zhǔn)化及優(yōu)化研究;
3、負(fù)責(zé)公司前端的測(cè)試計(jì)劃和優(yōu)化,編寫(xiě)設(shè)計(jì)文檔和測(cè)試分析報(bào)告等文檔,沉淀和積累前端的測(cè)試框架和發(fā)布規(guī)范及機(jī)制;
4、負(fù)責(zé)前端系統(tǒng)性能優(yōu)化工作,確立優(yōu)化方向及可執(zhí)行和量化的優(yōu)化方案;
5、完成領(lǐng)導(dǎo)交辦的其它任務(wù)。
職位要求:
1、 本科以上學(xué)歷,3年以上的相關(guān)工作經(jīng)驗(yàn)(特別優(yōu)秀者可以放寬要求);
2、 有OA、電子政務(wù)等軟件項(xiàng)目經(jīng)驗(yàn)者優(yōu)先考慮;
3、 熟悉Web前端技術(shù),包括HTML、CSS、Javascript、Ajax、DOM、JSON等前端技術(shù);
4、 熟練使用JS實(shí)現(xiàn)Json、XML格式的數(shù)據(jù)發(fā)送與數(shù)據(jù)解析;
5、 熟悉各種web標(biāo)準(zhǔn),了解各主流瀏覽器特性,使頁(yè)面兼容主瀏覽器;
6、 熟悉流行前端MVC架構(gòu),熟悉流行框架(EasyUI、JQuery、Bootstrap、Vue等。