前端的學(xué)習(xí)并不簡單,目前,HTML5可以說是熱門的前端崗位了,但是市場上優(yōu)秀的前端工程師卻相對較少,有人在吐槽招不到前端工程師,因為在供不應(yīng)求的前端招聘市場上,優(yōu)秀的前端工程師才是有話語權(quán)的那一方。不僅在國內(nèi)的互聯(lián)網(wǎng)行業(yè),在國外,前端工程師一樣是需求旺盛,入門不難,但是想要精通前端開發(fā)還是有難度的。
1.前端開發(fā)是什么
可能很多人認(rèn)為前端開發(fā)和 Web 開發(fā)類似,而 Web 開發(fā)已經(jīng)有 20 多年的歷史,所以前端并不是一個新領(lǐng)域。然而,前端工程師概念中的「接口技術(shù)實現(xiàn)和用戶體驗作為一個專業(yè)的工作領(lǐng)域」,卻無疑是很新的。大概幾年前,前端開發(fā)的技術(shù)增長迅猛,更久以前,Web 的可視化設(shè)計和技術(shù)實現(xiàn)所需要的資源是平均分配的。隨著網(wǎng)站的發(fā)展,網(wǎng)站不僅是一個登錄頁面,工程資源的需求越來越明顯。人們開始專門學(xué)習(xí)網(wǎng)站專用的 JavaScript、后端技術(shù)、UX、數(shù)據(jù)庫,甚至系統(tǒng)設(shè)計。現(xiàn)在,一位合格的前端工程師,必須對視覺設(shè)計有興趣。很顯然,要處理大量的 Web 應(yīng)用程序需求,技術(shù)任務(wù)就要進(jìn)行分類,以便于多人同時處理網(wǎng)站請求。事實上現(xiàn)在已經(jīng)不可能一個人快速地解決所有的技術(shù)細(xì)節(jié)了。現(xiàn)在還有一類人是獨自處理一個 Web 應(yīng)用程序的所有問題,即「全棧工程師」,但是優(yōu)秀的全棧工程師確實比較少的。
2.前端難度并不小
大多人都認(rèn)為前端開發(fā)是一個相對于其他模塊來說更簡單的領(lǐng)域,事實上,前端工程師在做的是:
(1)在設(shè)計師和工程師之間實現(xiàn)可視化的語言;
(2)用可視化的設(shè)計,定義一組代表內(nèi)容、品牌和功能的組件;
(3)為 Web 應(yīng)用程序的會話、框架、需求、可視化的語言和規(guī)格設(shè)定底線;
(4)定義 Web 應(yīng)用程序的設(shè)備、瀏覽器、屏幕、動畫的范圍;
(5)開發(fā)一個質(zhì)量保證指南來確保品牌忠誠度、代碼質(zhì)量、產(chǎn)品標(biāo)準(zhǔn);
(6)為 Web 應(yīng)用程序設(shè)定適當(dāng)?shù)男芯唷⒆煮w、標(biāo)題、圖標(biāo)、填充等等;
(7)為 Web 應(yīng)用程序設(shè)定多種分辨率的圖像,設(shè)備為主的實體模型,同時維護(hù)設(shè)計指南;
(8)標(biāo)記 Web 應(yīng)用程序,使之語義化,SEO 友好;
(9)用一種友好的,耗電少的,設(shè)備和客戶端感知的方式連接 API,獲取信息;
(10)開發(fā)客戶端代碼來顯示流暢的動畫、過渡、延遲加載、交互、應(yīng)用工作流程,大多數(shù)時間用來考慮漸進(jìn)增強和向后兼容的標(biāo)準(zhǔn);
(11)保證后臺連接安全,采取跨域資源共享 (CORS)的程序考慮,防止跨站點腳本 (XSS)和跨站請求偽造 (CSRF);
(12)重要的是,盡管有嚴(yán)格的期限、利益相關(guān)的要求,以及設(shè)備的限制,無論現(xiàn)在還是將來都是以用戶為主。
為了實現(xiàn)上述目標(biāo),前端工程師采用了從可視化到編程的多種工具 ,甚至有時要照顧市場、 UX 到內(nèi)容改進(jìn)等等。