事實上,每家專業招聘機構,從Glassdoor.com和Linkedin到美國勞工部,都報導了就業市場對開發人員需求的增加速度出於意料地快。這種需求可能已經不新鮮了,可是就業市場對哪一種開發語言的需求量最大,依然是個熱門話題。雖然對HTML5技能的依然需求保持穩定,但真正必須掌握的語言就是JavaScript。javascript
在Monster網站的技術求職趨勢報告中,特別指出了JavaScript是必須掌握的幾門技能之一,這要得益於企業級Web應用的增加。在2015年1月,Mashable網站列出了對於開發人員來講最重要的15項技能,JavaScript排在第二。相比前幾年JavaScript並不受歡迎,這種變化很明顯。博客做者Glen Maddern的文章表明瞭對JavaScript的全新思考,他相信JavaScript正從一種「湊合」的語言變成一種優秀的語言。前端
爲何現在JavaScript如此火爆?首先,不少企業都在採用它,它在不少技術系統中均扮演了正面的角色。根據JavaWorld的Martin Heller的說法,JavaScript不只僅能夠搭配HTML5和CCS來構建Web前端,在移動應用中也常常見到它的身影,甚至在後端開發領域,它也經過Node.js服務器在發揮做用。若是你去讀讀這篇文章《全棧JavaScript介紹》,你就會理解JavaScript遠遠不止是一門「90秒鐘能夠掌握」的編程語言那麼簡單。JavaScript在產品經理和設計師人羣中愈來愈流行,由於它實現了不少具備良好用戶體驗的功能,支持大多數流行的網頁瀏覽器和平臺。這對於設計師和終端用戶來講是好消息。java
隨着移動領域的飛速發展,消費者和企業用戶無論使用什麼設備,都開始指望獲得高響應性的(譯者注:指針對不一樣設備的顯示屏幕自適應地顯示內容)、無縫的Web體驗。那些理解大勢所趨的品牌,都撤下了m.開頭的移動版網站,開始提供徹底動態的體驗,它們具備豐富的功能,性能良好,並且能夠根據環境爲你展現不一樣的內容。此外,客戶端爲了達到令人驚歎的效果,也須要動畫和交互;最先,Flash是這些目標的解決方案。現在,JavaScript能獲得更好的效果。node
之前原生應用中不少很酷的功能,在網頁瀏覽器中只能用Macromedia的Flash或微軟的Silverlight這樣的插件才能作出來。今天,JavaScript配合HTML5和CSS3就能達到這些效果。複雜的數據交互(好比內嵌過濾、即時反饋、基於上下文的規則等)之前須要花數個星期才能編出來,但如今若是用流行的JavaScript庫和框架來操做和實現,能達到開箱即用的效果。因爲這些緣由,前端開發人員的職位需求描述已經從「有jQuery經驗」,變成了「有Angular、Node、Bootstrap和jQuery經驗」。做爲一門語言,JavaScript在迅速成長,但高質量的開發會不斷地催生新的需求。git
光有技術還不能造就一個優秀的開發者。他要有從總體角度去理解和處理應用的能力。JavaScript能夠成爲架構和開發策略的一部分,但它自己並不能做爲一種架構或開發策略。github
換句話說,JavaScript很不錯,可是它不是萬能的。有經驗有能力的開發者知道,什麼時候何地應該如何去使用它。但開發新手不同,就像他們對待任何編程語言那樣,一旦他們熟悉了某種庫或框架,就想着用它來搞定一切,哪怕它對某個任務來講並非很合適。這個問題要潛伏一段時間才能暴露,這將會給業務的可伸縮性、可維護性和性能帶來負面影響。web
舉個例子,在一些發展中國家,網絡帶寬、計算機的CPU和內存資源都很成問題,這種狀況JavaScript就不是最好的選擇。甚至,用戶的瀏覽器版本落後最新的版本不少,也是很常見的事情,因此若是大量使用JavaScript的話,性能和兼容性就會成問題。若是你產品的受衆是世界性的,那就少用些「最前沿的UI」,不然產品到部分用戶手裏會產生糟糕的用戶體驗。此外,在安全管控甚嚴的工業領域,JavaScript也不是開發應用的好選擇。編程
架構師和資深開發人員理解上面這些因素,知道何時使用JavaScript是正確的選擇,何時不是。這裏的底線就是把這方面的最佳實踐時刻牢記,確保用戶體驗不受影響。後端
JavaScript會經得起時間考驗嗎?會長盛不衰,仍是曇花一現,很快被更好的技術所替代?換句話說,用JavaScript來開發你的企業應用是否保險?瀏覽器
不少開發者贊成Flash已經窮途末路。部分人認爲Flash退出歷史舞臺是天然演化的結果,但更多人都知道是誰擊敗了它。JavaScript已經替代了Flash,至少在下個十年中,它會繼續擴張,在各類軟件系統中承擔愈來愈多的角色。咱們來考慮一下Flash提供的功能——主要是UI方面的——再把這些UI功能的數量乘以幾倍來估算應用程序全部方面的功能,可想而知JavaScript將帶來多大的價值。JavaScript會有過期的一天嗎?固然會,但咱們還不知道是什麼時候。
另外一個有可能促成JavaScript長盛不衰的因素是它老是在不停地演進。新的JavaScript庫和框架在不斷地涌現出來。就在幾年前,AngularJS還處於beta測試中;而今天,就業市場對有AngularJS經驗的開發者的需求空前高漲。而且這僅是一個例子,說明JavaScript的前沿成果演變成市場主流的速度有多快。固然知識是多方面的。解決重大問題的能力、最佳實踐以及可以清晰地理解這些庫和框架如何解決咱們面臨的挑戰,是人事經理爲人才訂價的最重要依據。
要精確預測一門技術會如何演進是不可能的,可是咱們能夠肯定今天用JavaScript寫的應用,在將來好多年中都須要獲得持續的支持。就算咱們樂觀地認爲JavaScript會很長壽,目前的這些產品也須要在將來十年中獲得屢次升級和修改,以適應企業級的應用。爲了能維持業務,或加強JavaScript寫的應用,企業在當下以及將來都須要撥出預算來和外部機構合做,或僱傭內部的專家。
對於那些經歷着Web技術演進並保持本身的JavaScript技能持續更新的開發者來講,這一切都是好消息。可是,剛剛入門的開發者(或剛剛參加工做的年輕開發者)要想抓住這一波機會,應該作些什麼呢?當下從事技術工做的迷人之處就在於,全部的文檔、示例代碼以及其餘開發者討論過的問題,只要稍一搜索便唾手可得。
轉投JavaScript的開發者,或者想試水現代Web技術的人,能夠從在線進修課程開始。像Codecademy這樣的網站免費爲初學者提供了JavaScript課程。若是開發者但願經過實戰來學習儘量多的知識,那麼訂閱Pluralsight多是更好的選擇。Pluralsight有更多的課程門類可供選擇,從AngularJS基礎課程,到使用Backbone.js在服務端存儲數據,樣樣都有。這些課程都由業界專家編寫並解說。
這些庫和框架的開發者社區是很強大的。若是你須要面對面討論解決問題的學習方式,那麼你能夠考慮找一個本地學習小組或上Meetup去找一個,這類小組一般會分享關於特定技術問題的知識。像StackOverflow這樣的網站也是一個知識寶庫,開發者遇到的常見(或不那麼常見)的問題都會有。
大多數頂級的框架和庫都是開源的,而且託管在GitHub上(好比,GitHub AngularJS)。對於當代軟件開發來講,GitHub是一筆沒法想象的財富,它提供了大量在不斷演進的優秀軟件。開發者若是但願幫助開源軟件發展,並得到開發者社區的認同,能夠經過解決bug、更新wiki和提交新功能補丁等方式來參與進去。並且愈來愈多的技術招聘者在篩選階段要求查看應聘者的GitHub或Bitbucket的帳戶,使得這一點變得更加劇要。
你的職業發展、受歡迎程度和薪水從沒有像如今同樣,掌握在本身手裏。你是否還記得幾年前,就業市場對iOS開發者的需求量空前的大?若是像你這樣的UI開發者當時只能站在邊上看着那些招聘廣告流口水,那麼好消息來了:如今是你的時代了。由你統治的市場來了,並將繁榮好久。
Areos Ledesma是AIM諮詢公司的企業發展總監。曾經擔任該公司數字體驗和用戶體驗設計的解決方案總監。Areos是一名經驗豐富的諮詢師,他在高效領導項目管理方面有卓越的聲譽。他精通於管理一項大規模行動的方方面面,包括數字策略、用戶體驗和視覺設計、快速成型、內容策略、開發、測試和計量。
Will Asrari是AIM諮詢公司的解決方案諮詢師和高級移動開發工程師。Will是微軟認證的ASP.NET工程師,他精通iOS和移動Web開發。他關於數字體驗和移動的解決方案致力於用戶體驗設計原則和以及移動技術如何能創造出吸引人的客戶體驗,同時又能知足業務目標。