201508整理:前端工程師的(如今主要的問題、工做選擇、技術前景將來)

一個小整理。javascript

原文:前端工程師的將來

「前端工程師的將來」精華:css

A.html

偏向「如今主要的問題」:前端

第一大挑戰仍是兼容性。雖然微軟已經決定將ie6安樂死,ie9/10看起來至關標準。向後兼容彷佛輕鬆了,但向前兼容又開始愈來愈讓人頭疼了。打算搞一個web app,你會發現android上的webkit是多麼混亂。在桌面瀏覽器上老是有css hack能夠擺平,但在mobile上只能考慮退化方案。從兼容瀏覽器(外加套殼的瀏覽器)到兼容設備,實際上兼容性變得更復雜了。
第二大挑戰是交互的複雜度。和目前UI/交互的要求相比瀏覽器引擎給咱們接囗的確過低級了。因而今年前端技術的熱門話題是各類javascript, css的預處理器、各類mvc框架、和微框架的討論。
第三大挑戰是代碼可維護性。複雜度的提高直接影響代碼的維護性。JS/CSS/HTML代碼生命週期愈來愈長,也就愈來愈須要從代碼質量、架構和工具上保證它們的可維護性。代碼的歷史問題是永遠的痛點。
第四大挑戰是性能。
第五大挑戰是我的成長。html5

B.java

偏向「前景將來」:node

Web前端工程師的職業生涯,我以爲能夠分爲三步,初級前端開發工程師- > 資深前端工程師- > 前端架構師。每種職責都有其不一樣的角色和分工。
前端開發工程師(或者說「網頁製做」、「網頁製做工程師」、「前端製做工程師」、「網站重構工程師」),這樣的一個職位的主要職責是與交互設計師、視覺設計師協做,根據設計圖用HTML和CSS完成頁面製做。同時,在此基礎之上,對完成的頁面進行維護和對網站前端性能作相應的優化。
資深前端開發工程師,相比較「前端開發工程師」而言,更加資深一些,固然其工做的職責也會相應的更加大一些。通常而言,資深前端開發工程師須要使用JavaScript或者ActionScript來編寫和封裝具備良好性能的前端交互組件,同時還要對Web項目的前端實現方案提供專業指導和監督並在平常工做之中對新人及相關開發人員進行前端技能的培訓和指導。另外,還要跟蹤研究前端技術,設計並實施全網前端優化。
對於前端架構師,更多意義上說像是一個管理的崗位,可是其職責要求卻不只只是管理。前端架構師須要帶領組員實現全網的前端框架和優化,還要建立前端的相應標準和規範,並經過孜孜不倦的佈道來完善並推廣和應用本身的標準和框架。同時,還要站在全局的角色爲整個網站的信息架構和技術選型提供專業意見和方案。android

C.css3

偏向「前景將來」:web

10年時我寫過篇BLOG有提及過這個 水想前端(一):鳥瞰 。

在咱前端的頭上,有三座大山: 設計、後臺、兼容性
一前一後都不如別人專業,而兼容性問題,看得出問題、卻看不出水平。不由仰天長嘆:我勒個去!
從這點上來看,前端挺像祕書,作的是潤滑劑,但卻有點吃力不討好。


---

而從如今看來,前端的發展道路太多太多了,他是個發展太快的領域,因此如今呈現出一片混亂的局勢——這同時也是前端的機遇,亂世總能作更多事情的。

在我看來,這一片混亂的局勢纔是挑戰的主要來源。

面臨的挑戰有:

    1. 來自多終端的挑戰:內容型網頁的響應式設計。單純IE與標準瀏覽器的角逐已經開始告一段落,開始進入更混亂的手機/平板/桌面三分天下的局勢。頁面重構童鞋們任重道遠。
    2. 功能與開發效率的平衡:前端開始在非大衆產品上嶄露頭角,尤爲是後臺管理系統、組織信息反饋系統等。這時我才無論什麼low Level API呢,君不見ExtJS, YUIjs等哥斯拉久盛不衰?這時前端童鞋面臨的每每是先後端甚至包括數據層面通吃的局面,這未嘗不是挑戰。(我一直以爲,這方面纔是最適合後端轉前端的路線)
    3. 混合式APP的大潮:不論是桌面端仍是移動端,都愈來愈多軟件/應用開始使用混合式的開發,從而在保證核心功能體驗的同時、提高整體的開發效率。(Hybrid App,反正個人理解是原生代碼與WebView混合)
    4. 做爲可互動終端:使得信息傳達能更具體化、可視化、互動化。最典型的就是數據可視化方面的挑戰(固然我以爲不止於此)。d3js的團隊從protovis全力轉入到d3js中就可見一斑:d3js更增強調可視化呈現的動畫、以及即時反饋的交互能力。這在我看來也是WEB的將來之一。誰說WEB就必須是大衆使用的呢?一個統一的標準總比每次都訂作圖形引擎來得要好。

D.

1. 溝通。前端工程師在項目中處於一箇中間位置,對下要和後端工程師商定接口,對上要和產品、設計有良好的溝通。不管哪個環節中出現的問題,都會在前端最早表現出來,良好的溝通能夠保證儘早發現並解決這些問題。
2. 寫出可維護的代碼。前端三大語言html,css,javascript都是十分靈活的,寫出能夠工做的代碼並不難,真正難的是保證代碼的可維護性。代碼可維護性涉及的問題包括,(html)標籤語義化,標籤結構化,(css) 規則體系化,組件化,(js)框架的選擇,模塊化,高內聚,低耦合。
3. 寫出高性能的Js代碼。包括字符串操做,dom操做,ajax操做。須要考慮性能問題的環節實在不少。
4. 兼容性。兼容性問題仍在拖慢前端工程師工做進度的主要問題,等ie6死掉,國產瀏覽器外殼質量作的好一些,狀況可能會有所好轉。
5. 技術更新快。前端技術更新速度十分快,html5,css3,nodejs, commonJs,按需加載,等等都是最近幾年出來的。google又搞出一個Dart語言,鬼知道它會會真的把js取代了。

 

淘寶 UED 前端、騰訊腳本開發、豆瓣前端開發,應該如何在這幾個工做之間選擇?

「淘寶 UED 前端、騰訊腳本開發、豆瓣前端開發,應該如何在這幾個工做之間選擇?」精華:

A.

偏向「工做目的」:

其實對於剛入行的人來講,全面的鍛鍊很重要,歷練幾年後再進大公司比較專的作某件事,這樣的成長曆程比較好。如今的創業風氣純屬陰謀,不要把寶貴年華扔在不靠譜的事上。畢業後至少5,6年踏踏實實的研習技術。

B.

豆瓣對前端工程師的要求算比較全面,反過來也意味着在開發中會經受全面的技術挑戰。挑戰你對模板的規劃能力,代碼的設計能力,對複雜JS項目的駕馭力,還有前端技術之外的.....專鑽一門技術,不符合前端的特色啊

C.

最後,想說一點:任何一個團隊,永遠不會像你想象中的那麼好,也不會如你所據說的那麼糟。一個團隊的好壞,每每在你本身的心中。想好本身想要什麼,併爲之去努力去改變,這遠比選擇外界環境更重要。

D.

偏向「工做選擇」:

做爲一個剛經歷了換工做的前端,一個公司,我會問本身3個這樣的問題:

1. 團隊是否是我願意呆的?
2. 作的產品是否是我願意花心思的?
3. 在能勝任的狀況下,他們是否看重個人要求,好比工資?

E.

3. 真正的成長,不是你參與多少項目,學會多少語言,應用多少框架。而是你在用技術解決業務問題後沉澱下來的屬於你的方法論,這些方法論一般不會過時,還會幫助你舉一反三的解決各類問題。三家公司都存在着各類複雜的業務問題,充滿着機會。無論你選擇哪家公司,坦誠面對夥伴,勇於面對挑戰,敢於突破,樂於分享,總結出本身的方法論...任何一家健康的公司都會向你敞開懷抱。
F.

但半年前決定離開了居,緣由只有一個,稍微有追求得的前端應該都不肯在樂居呆過久,除非你是過日子。

大公司,始終是以業務爲主導了,這是領導沒法改變的,因此不要相信領導的承諾(不是說他不去改變,而是這些他沒法改變),若是你發現你的我的發展與公司業務有相背離的,就該好好想一想是否還要呆下去了。

我只能把我本身的經歷給你作一個參考。


4. 祝福不少離開團隊的同事,曾經共同奮鬥過,都是緣分。

 

書籍:Web前端黑客技術揭祕

把它整理到這裏是由於書簡介的一些關鍵詞:「Web前端的黑客攻防技術是一門很是新穎且有趣的黑客技術,主要包含Web前端安全的跨站腳本(XSS)、跨站請求僞造(CSRF)、界面操做劫持這三大類,涉及的知識點涵蓋信任與信任關係、Cookie安全、Flash安全、DOM渲染、字符集、跨域、原生態攻擊、高級釣魚、蠕蟲思想等,這些都是研究前端安全的人必備的知識點。本書做者深刻剖析了許多經典的攻防技巧,並給出了許多獨到的安全看法。

本書適合前端工程師閱讀,同時也適合對Web前端各種安全問題或黑客攻防過程充滿好奇的讀者閱讀,書中的內容可讓讀者從新認識到Web的危險,並知道該如何去保護本身以避免受黑客的攻擊。」

相關文章
相關標籤/搜索