如何成爲一名優秀的web前端工程師

我所遇到的前端程序員分兩種:前端

第一種一直在問:如何學習前端?程序員

第二種總說:前端很簡單,就那麼一點東西。web

我從沒有聽到有人問:如何作一名優秀、甚至卓越的WEB前端工程師。編程

如何成爲一名優秀的web前端工程師瀏覽器

何爲:前端工程師?性能優化

前端工程師,也叫Web前端開發工程師。他是隨着web發展,細分出來的行業。服務器

Web前端開發技術主要包括三個要素:HTML、CSS和JavaScript!前端工程師

它要求前端開發工程師不只要掌握基本的Web前端開發技術,網站性能優化、SEO和服務器端的基礎知識,並且要學會運用各類工具進行輔助開發以及理論層面的知識,包括代碼的可維護性、組件的易用性、分層語義模板和瀏覽器分級支持等。架構

隨着近兩三年來RIA(Rich Internet Applications的縮寫,中文含義爲:豐富的因特網應用程序)的流行和普及帶來的諸如:Flash/Flex,Silverlight、XML和 服務器端語言(PHP、,JSP、Python)等語言,前端開發工程師也須要掌握。框架

前端開發的入門門檻其實很低,與服務器端語言先慢後快的學習曲線相比,前端開發的學習曲線是先快後慢。

HTML 甚至不是一門語言,他僅僅是簡單的標記語言!

CSS 只是無類型的樣式修飾語言。固然能夠勉強算做弱類型語言。

Javascript 的基礎部分相對來講不難,入手還算快。

也正由於如此,前端開發領域有不少自學成「才」的同行,但大多數人都停留在會用的階段,由於後面的學習曲線愈來愈陡峭,每前進一步都很難。

Web前端技術有一些江湖氣,知識點過於瑣碎,技術價值觀的博弈也難分伯仲,即全局的系統的知識結構並未成體系,這些因素也客觀上影響了「正統「前 端技術的沉澱!並且各類「奇技淫巧」被濫用,前端技術知識的傳承也過於泛泛,新人難看清時局把握主次。所以,前端技術領域,爲本身覓得一個靠譜的師兄,重 要性要蓋過項目、團隊、公司、甚至薪水。

另外一方面,正如前面所說,前端開發是個很是新的職業,對一些規範和最佳實踐的研究都處於探索階段。

總有新的靈感和技術不時閃現出來,例如CSS sprite、負邊距佈局、柵格佈局等;

各類JavaScript框架層出不窮,爲整個前端開發領域注入了巨大的活力;

瀏覽器大戰也愈來愈白熱化,跨瀏覽器兼容方案依然是五花八門。

爲了知足「高可維護性」的須要,須要更深刻、更系統地去掌握前端知識,這樣纔可能建立一個好的前端架構,保證代碼的質量。

隨着手持設備的迅猛發展,帶動了 HTML5行業標準的快速發展。web領域的技術,大概有10年都沒有大的更新了!

如今市場很須要優秀的、高級的前端工程師。

實際上,一門語言是否腳本語言,每每是她的設計目標決定,簡單與複雜並非區分腳本語言和非腳本語言的標準。

事實上,在腳本語言裏面,Javascript 屬於至關複雜的一門語言,他的複雜度即便放在非腳本語言中來衡量,也是一門至關複雜的語言!

Javascript 的複雜度不遜色於 Perl 和 Python!

如何學習前端知識?

咱們生活在一個充滿規則的宇宙裏面。社會秩序按照規則運行,計算機語言幾乎所有是規則的集合。計算機前輩們定義規則,規則約束咱們,咱們用規則控制數據。大部分時候,對數據的合理控制,來自於你對規則的掌握。

學習 HTML,CSS 應該先跟着書仔細、紮實的學一遍。而後就須要作大量的練習,作各類常規的、奇怪的、大量的佈局練習來捆固、理解本身的知識。

而學習 Javascript 首先要知道這門語言能夠作什麼,不能作什麼,擅長作什麼,不擅長作什麼!

若是你只想當一個普通的前端程序員,你只須要記住大部分 Javascript 函數,作一些練習就能夠了。

若是你想當深刻了解Javascript,你須要瞭解 Javascript 的原理,機制。須要知道他們的本源,須要深入瞭解 Javascript 基於對象的本質。

還須要 深入瞭解 瀏覽器宿主 下 的 Javascript 的行爲、特性。

由於歷史緣由,Javascript一直不被重視,有點像被收養的通常! 因此他有不少缺點,各個宿主環境下的行爲不統1、內存溢出問題、執行效率低下等問題。

做爲一個優秀的前端工程師還須要深刻了解、以及學會處理 Javascript 的這些缺陷。

那麼一名優秀的、甚至卓越的 前端開發工程師的具有什麼條件?

首先,優秀的Web前端開發工程師要在知識體系上既要有廣度和深度!作到這兩點,其實很難。因此不少大公司即便出高薪也很難招聘到理想的前端開發工程師。技術非黑即白,只有對和錯,而技巧則見仁見智。

在之前,會一點Photoshop和Dreamweaver的操做,就能夠製做網頁。

如今,只掌握這些已經遠遠不夠了。不管是開發難度上,仍是開發方式上,如今的網頁製做都更接近傳統的網站後臺開發,因此如今再也不叫網頁製做,而是叫Web前端開發。

Web前端開發在產品開發環節中的做用變得愈來愈重要,並且須要專業的前端工程師才能作好。

Web前端開發是一項很特殊的工做,涵蓋的知識面很是廣,既有具體的技術,又有抽象的理念。簡單地說,它的主要職能就是把網站的界面更好地呈現給用戶。

其次,優秀的Web前端開發工程師應該具有快速學習能力。Web發展的很快,甚至能夠說這些技術幾乎天天都在變化!若是沒有快速學習能力,就跟不上 Web發展的步伐。前端工程師必須不斷提高本身,不斷學習新技術、新模式;僅僅依靠今天的知識沒法適應將來。Web的明天與今天必將有天壤之別,而前端工 程師的工做就是要搞清楚如何經過本身的Web應用程序來體現這種翻天覆地的變化。

說到這裏,我想起了一個大師說過的一句話:對於新手來講,新技術就是新技術。

對於一個高手來講,新技術不過是就技術的延伸。

再者,優秀的前端工程師須要具有良好的溝通能力,由於前端工程師至少都要知足四類客戶的需求。

一、產品經理。這些是負責策劃應用程序的一羣人。他們會想出不少新鮮的、奇怪的、甚至是不但是實現的應用。通常來講,產品經理都追求豐富的功能。

二、UI設計師。這些人負責應用程序的視覺設計和交互模擬。他們關心的是用戶對什麼敏感、交互的一向性以及總體的好用性。通常來講,UI設計師於流暢靚麗、但並不容易實現的用戶界面,並且他們常常不滿前端工程師形成 1px 的偏差。

三、項目經理。這些人負責實際地運行和維護應用程序。項目管理的主要關注點,無外乎正常運行時間、應用程序始終正常可用的時間、性能和截止日期。項目經理追求的目標每每是儘可能保持事情的簡單化,以及不在升級更新時引入新問題。

四、最終用戶。指的是應用程序的主要消費者。儘管前端工程師不會常常與最終用戶打交道,但他們的反饋意見相當重要。最終用戶要求最多的就是對我的有用的功能,以及競爭性產品所具有的功能。

Yahoo 公司 ,YUI 的開發工程師 Nicholas C. Zakas 認爲:

 

本身是從事了五年的前端工程師,本身整理了一份最全面前端學習資料,從最基礎的HTML+CSS+JS到HTML5的項目實戰的學習資料都有整理,送給每一位前端小夥伴,有想學習web前端的,或是轉行,或是大學生,還有工做中想提高本身能力的,正在學習的小夥伴,須要能夠私聊我喲,這是個人前端開發qun,【四八四】【七五七】【七六零】,直接羣裏下載,對於學習web前端有任何問題(學習方法,學習效率,如何就業)均可以問我,最後能夠點一波關注喲!

前端工程師是計算機科學職業領域中最複雜的一個工種。絕大多數傳統的編程思想已經不適用了,爲了在多種平臺中使用,多種技術都借鑑了大量軟科學的知識和理 念。成爲優秀前端工程師所要具有的專業技術,涉及到廣闊而複雜的領域,這些領域又會由於你最終必須服務的各方的介入而變得更加複雜。專業技術可能會引領你 進入成爲前端工程師的大門,但只有運用該技術創造的應用程序以及你跟他人並肩協同的能力,纔會真正讓你變得優秀。

相關文章
相關標籤/搜索