前端工程師,也叫Web前端開發工程師。他是隨著web發展,細分出來的行業。Web前端開發工程師,主要職責是利用(X)HTML/CSS/JavaScript/DOM/Flash等各種Web技術進行產品的界面開發。制作標準優化的代碼,并增加交互動態功能,開發JavaScript以及Flash模塊,同時結合后臺開發技術模擬整體效果,進行豐富互聯網的Web開發,致力于通過技術改善用戶體驗。
Web前端開發技術主要包括三個要素:HTML、CSS和JavaScript!
它要求前端開發工程師不僅要掌握基本的Web前端開發技術,網站性能優化、SEO和服務器端的基礎知識,而且要學會運用各種工具進行輔助開發以及理論層面的知識,包括代碼的可維護性、組件的易用性、分層語義模板和瀏覽器分級支持等。
隨著近兩三年來RIA(Rich Internet Applications的縮寫,中文含義為:豐富的因特網應用程序)的流行和普及帶來的諸如:Flash/Flex,Silverlight、XML和服務器端語言(PHP、ASP.NET,JSP、Python)等語言,前端開發工程師也需要掌握。
前端開發的入門門檻其實很低,與服務器端語言先慢后快的學習曲線相比,前端開發的學習曲線是先快后慢。
HTML 甚至不是一門語言,他僅僅是簡單的標記語言!
CSS 只是無類型的樣式修飾語言。當然可以勉強算作弱類型語言。
Javascript 的基礎部分相對來說不難,入手還算快。
也正因為如此,前端開發領域有很多自學成“才”的同行,但大多數人都停留在會用的階段,因為后面的學習曲線越來越陡峭,每前進一步都很難。 Web前端技術有一些江湖氣,知識點過于瑣碎,技術價值觀的博弈也難分伯仲,即全局的系統的知識結構并未成體系,這些因素也客觀上影響了“正統“前端技術的沉淀!而且各種“奇技淫巧”被濫用,前端技術知識的傳承也過于泛泛,新人難看清時局把握主次。因此,前端技術領域,為自己覓得一個靠譜的師兄,重要性要蓋過項目、團隊、公司、甚至薪水。
另一方面,正如前面所說,前端開發是個非常新的職業,對一些規范和最佳實踐的研究都處于探索階段。總有新的靈感和技術不時閃現出來,例如CSS sprite、負邊距布局、柵格布局等;各種JavaScript框架層出不窮,為整個前端開發領域注入了巨大的活力;瀏覽器大戰也越來越白熱化,跨瀏覽器兼容方案依然是五花八門。為了滿足“高可維護性”的需要,需要更深入、更系統地去掌握前端知識,這樣才可能創建一個好的前端架構,保證代碼的質量。
隨著手持設備的迅猛發展,帶動了 HTML5行業標準的快速發展。web領域的技術,大概有10年都沒有大的更新了!現在市場很需要優秀的、高級的前端工程師。一方面是因為這是一個比較新的細分行業,而且前端程序員大都自學一部分,知識結構不系統;另一方面,大學里面沒有這種課程,最最重要的是:北大青鳥這類培訓機構也沒有專門的前端工程師的培訓課程!!
大多數程序員認為 Javascript 過于簡陋,只適合一些網頁上面花哨的表現,所以不愿花費精力去學習,或者以為不學習就能掌握。實際上,一門語言是否腳本語言,往往是她的設計目標決定,簡單與復雜并不是區分腳本語言和非腳本語言的標準。事實上,在腳本語言里面,Javascript 屬于相當復雜的一門語言,他的復雜度即使放在非腳本語言中來衡量,也是一門相當復雜的語言!Javascript 的復雜度不遜色于 Perl 和 Python!