web前端開發工程師

web前端開發工程師

徠Web前端開發工程師,是從事Web前端開發工作的工程師。主要進行網站開發,優化,完善的工作。網頁製作是Web1.0時代的產物,那時網站的主要內容都是靜態的,用戶使用網站的行為也以瀏覽為主。

簡介


2005年以後,網際網路進入Web2.0時代,各種類似桌面軟體的Web應用大量湧現,網站的前端由此發生了翻天覆地的變化。網頁不再只是承載單一的文字和圖片,各種豐富媒體讓網頁的內容更加生動,網頁上軟體化的交互形式為用戶提供了更好的使用體驗,這些都是基於前端技術實現的。
隨著Web2.0概念的普及和W3C組織的推廣,網站重構的影響力正以驚人的速度增長。XHTML+CSS布局、DHTML和Ajax像一陣旋風,鋪天蓋地席捲而來,包括新浪、搜狐、網易、騰訊、淘寶等在內的各種規模的IT企業都對自己的網站進行了重構。

網站重構


對自網站進行重構有兩個方面的原因:
第一,根據W3C標準進行重構后,可以讓前端的代碼組織更有序,顯著改善網站的性能,還能提高可維護性,對搜索引擎也更友好;
第二,重構后網站能帶來更好的用戶體驗,用XHTML+CSS重新布局后的頁面,文件更小下載速度更快。
網站重構的目的僅僅是為了讓網頁更符合Web標準嗎?不是!重構的本質是構建一個前端靈活的類MVC框架,即HTML作為信息模型(Model),CSS控制樣式(View),JavaScript負責調度數據和實現某種展現邏輯(Controller)。同時,代碼需要具有很好的復用性和可維護性。這是高效率、高質量開發以及協作開發的基礎。
DHTML可以讓用戶的操作更炫,更吸引眼球;Ajax可以實現無刷新的數據交換,讓用戶的操作更流暢。對於普通用戶來說,一個網站是否專業、功能是否強大,伺服器端是用J2EE+Oracle的強大組合,還是用ASP+Access的簡單組合,並沒有太明顯的區別。但是,前端的用戶體驗卻給了用戶直觀的印象。
隨著人們對用戶體驗的要求越來越高,前端開發的技術難度越來越大,Web前端開發工程師這一職業終於從設計和製作不分的局面中獨立出來。

三要素


Web前端開發技術包括三個要素:HTML、CSS和JavaScript,隨著RIA的流行和普及,Flash/Flex、Silverlight、XML和伺服器端語言也是前端開發工程師應該掌握的。隨著時代的發展,前端開發技術的三要素也演變成為現今的:html5,css3,jquery。Web前端開發工程師既要與上游的交互設計師、視覺設計師和產品經理溝通,又要與下游的伺服器端工程師溝通,需要掌握的技能非常多。這就從知識的廣度上對Web前端開發工程師提出了要求。如果要精於前端開發這一行,也許要先精十行。然而,全才總是少有的。所以,對於不太重要的知識,只需要“通”即可。但“通”到什麼程度才算夠用呢?對於很多初級前端開發工程師來說,這個問題是非常令人迷惑的。
前端開發的入門門檻其實相對較低,與伺服器端語言先慢后快的學習曲線相比,前端開發的學習曲線是先快后慢。所以,對於從事IT工作的人來說,前端開發是個不錯的切入點。也正因為如此,前端開發領域有很多自學的同行,但是後面的學習曲線越來越陡峭,每前進一步都很難。另一方面,正如前面所說,前端開發是個非常新的職業,對一些規範和最佳實踐的研究都處於探索階段。總有新的靈感和技術不時閃現出來,例如CSS sprite、負邊距布局、柵格布局等;各種JavaScript框架層出不窮,為整個前端開發領域注入了巨大的活力;瀏覽器大戰也越來越白熱化,跨瀏覽器兼容方案依然是五花八門。為了滿足“高可維護性”的需要,需要更深入、更系統地去掌握前端知識,這樣才可能創建一個好的前端架構,保證代碼的質量。

具備條件


一位好的Web前端開發工程師在知識體繫上既要有廣度,又要有深度,所以很多大公司即使出高薪也很難招聘到理想的前端開發工程師。現在說的重點不在於講解技術,而是更側重於對技巧的講解。技術非黑即白,只有對和錯,而技巧則見仁見智。以前會Photoshop和Dreamweaver就可以製作網頁,現在只掌握這些已經遠遠不夠了。無論是開發難度上,還是開發方式上,現在的網頁製作都更接近傳統的網站後台開發,所以現在不再叫網頁製作,而是叫Web前端開發。Web前端開發在產品開發環節中的作用變得越來越重要,而且需要專業的前端工程師才能做好,這方面的專業人才近兩年來備受青睞。Web前端開發是一項很特殊的工作,涵蓋的知識面非常廣,既有具體的技術,又有抽象的理念。簡單地說,它的主要職能就是把網站的界面更好地呈現給用戶。
所徠以一名優秀的前端開發工程師,不單單需要掌握前端必須的各種技術,同時還要掌握其它技術,需要掌握一點後台的知識,同時也要對網站構架有一定的了解,同時還要掌握一定的SEO網站優化技術,這樣才可以稱之為一個“優秀的web前端開發工程師”。除了技術以外,還需要一定的時間來沉澱自己。一名資深的優秀web前端開發工程師,是每個大型企業都渴望的人才。業內人士表示,寧可高薪招人,險企也不願自己培養相關的技術人才。
如何才能做得更好呢?
第一,必須掌握基本的Web前端開發技術,其中包括:CSS、HTML、SEO、DOM、BOM、Ajax、JavaScript等,在掌握這些技術的同時,還要清楚地了解它們在不同瀏覽器上的兼容情況、渲染原理和存在的Bug。
第二,在一名合格的前端工程師的知識結構中,網站性能優化、SEO和伺服器端的基礎知識也是必須掌握的。
第三,必須學會運用各種工具進行輔助開發。
第四,除了要掌握技術層面的知識,還要掌握理論層面的知識,包括代碼的可維護性、組件的易用性、分層語義模板和瀏覽器分級支持,等等。
可見,看似簡單的網頁製作,如果要做得更好、更專業,真的是不簡單。這就是前端開發的特點,也是讓很多人困惑的原因。如此繁雜的知識體系讓新手學習起來無從下手,對於老手來說,也時常不知道下一步該學什麼。
代碼質量是前端開發中應該重點考慮的問題之一。例如,實現一個網站界面可能會有無數種方案,但有些方案的維護成本會比較高,有些方案會存在性能問題,而有些方案則更易於維護,而且性能也比較好。這裡的關鍵影響因素就是代碼質量。CSS、HTML、JavaScript這三種前端開發語言的特點是不同的,對代碼質量的要求也不同,但它們之間又有著千絲萬縷的聯繫。