2016年前端前景如何?

2016年前端趨勢


通過https://juejin.im最近的內容,可以感覺到:

  1. 在新的框架競爭中,React.js 最火,Redux 模式會有更多人學習
  2. ES6 普及速度很快,要快速融入
  3. Vue.js 可能是即將爆發的一個技術棧
  4. 移動頁面的 UI 框架,類似於:WeUI(weui)
  5. 基於 Electron 搭建 Web / Desktop 應用會更加常見
  6. 後端資料庫獨立化(Firebase, Parse ...)且可以更好地服務移動產品。這使得會 Node 寫後端的人可以更快地開發出相當複雜的產品(性能暫時不提)

------

總結,前端技術棧更新速度很快,但是那些根基(HTML / CSS / JS)掌握好了依舊是最重要的。新的框架層出不窮,與其每一個淺嘗輒止不如好好地練習其中之一併把相關的技術模塊都摸清楚讓自己對於前段有一個更全面的掌握。

以 Vue.js 為例:

  1. Vue.js v1.0+ 基礎語法
  2. Vue-loader 基於 Webpack 下的組件化編程
  3. Vue-cli 一個基於 Vue 的 Scaffolding 工具
  4. Vue-router 等等 routing 工具
  5. vuex 類似於 redux 的代碼架構

等等工業化工具(https://github.com/vuejs/awesome-vue),當日選擇一個框架來鍛煉自己的技術本身也是一種賭博。

------

最後配圖博君一笑:


問完這個問題,想必你就去取錢報班了。等一下,客官。

現在的IT界資本廉價,有點像熱炒的股市,惡性投機沒人管。

業內缺一條行規:不作預測。

業內缺一條箴言:IT有泡沫,入行需謹慎(認真)。


我覺得被培訓班喵上了 用不了多久就會出現像ios這樣的了


學好react,未來2年內的前端都不用愁了,別去單獨學什麼react,沒有webpack和redux,react-router, node server,還學什麼react 開發,從實踐性的項目學起吧。

hyy1115/react-redux-book


跟兩年前的IOS一樣,紅得發紫。

當然IOS現在依然很火,只是各公司用人的要求提高了,很多經過這兩年除了工作年限之外幾乎沒有什麼提升的人現在想換工作卻忽然發現IOS市場變了,人多職位少,殊不知中高級的IOS市場依然火熱。

兩年後的Web前端也會是這樣,所以為了不被淘汰,努力吧


給你來點正能量這不是我的風格,我就來給你潑!冷!水!

我是Java出生,不過職業生涯的前幾年一致都在做前端,從Dojo、Ext、jQuery到現在的Angular、Backbone、Underscore,從 ActionScript 到 Canvas 繪圖,從單純的CSS+JS到Compass、Sass、Less、Coffee Script、Grunt,這一路真的經歷的太多了。

不過近幾年雖然沒有放棄過前端,但是也逐漸的不再獨立創造代碼,更傾向使用別人寫好的模板或現成的工具,只有在(實在實在)萬不得已的情況下才會自己去造一些輪子,感覺現在前端如同六七年前一樣,還是沒有一個明確的章法,如果想要能夠獨立承擔前端的開發,你索要掌握的技術實在太多太多——不僅如此,這些技術還隨時面臨著更新換代的危險——技術太多,幾乎你整個職業生涯都是在學習新的技術以及維護學來的技術,根本沒有時間靜下來想:我怎麼去創造?

如果你想愉快工作,享受生活,前端目前的情況還挺困難,剛入門的小兄弟都喜歡寫前端,原因無非如下:

  1. 環境簡單:一開始沒有太多複雜的環境配置,一個Dreamweaver或Sublime就可以開搞

  2. 反應迅速:F5刷新就能立刻看到代碼效果,如果配置了Node.js+Chrome插件甚至都不需要刷新頁面就能看到效果。

  3. 效果顯著:一個頁面做的漂亮會讓大傢伙眼前一亮,覺得自己特有成就感。

現在市面上還是缺前端的,主要是因為後端逐漸成熟,大家都開始關注前端而已,不過隨著從業人員逐漸增多,對技能要求也越來越高,哪有輕輕鬆鬆拿三五萬的道理?說不定三五年後前端的技能還必須附加個會使用Photoshop和Illustrator,需要較強的審美觀云云,在面試的時候可能就不會問你JS怎麼寫,Angular怎麼用了,可能會問你,兩種顏色配在一起會給人什麼樣的感受,這誰知道呢……


前端現在不是寫寫HTML就過好日子了, 前端的技能樹太多, 需要一個個點, 很多人就這樣掛掉了, 最後走到盡頭的都是英雄, 加油吧


現在我們學會JavaScript就可以做很多事,所以前端必然會很火。

著作權歸作者所有。

商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

作者:phodal

鏈接:http://zhuanlan.zhihu.com/phodal/20548041

來源:知乎

Web本身就是跨平台的,這意味著這中間存在著無限的可能性。

我是一名Web Developer,對於我來能用Web開發的事情就用Web來完成就好了——不需要編譯,不需要等它編譯完。我想到哪我就可以寫到哪,我改到哪我就可以發生哪發生了變化。

最近我在寫Growth——一個幫助開發人員成長的應用,在近一個月的業餘時間裡,完成了這個應用的:

  • 移動應用版:Android、Windows Phone、iOS(等賬號和上線)
  • Web版
  • 桌面版:Mac OS、Windows、GNU/Linux

截圖合併如下:

而更重要的是它們使用了同一份代碼——除了對特定設備進行一些處理就沒有其他修改。相信全棧的你已經看出來了:

Web = Chrome + Angular.js + Ionic

Desktop = Electron + Angular.js + Ionic

Mobile = Cordova + Angular.js + Ionic

除了前面的WebView不一樣,後面都是Angular.js + Ionic。

從Web到混合應用,再到桌面應用

在最打開的時候它只是一個單純的混合應用,我想總結一下我的學習經驗,分享一下學習的心得,如:

  • 完整的Web開發,運維,部署,維護介紹
  • 如何寫好代碼——重構、測試、模式
  • 遺留代碼、遺留系統的形成
  • 不同階段所需的技能
  • 書籍推薦
  • 技術棧推薦
  • Web應用解決方案

接著我用Ionic創建了這個應用,這是一個再普通不過的過程。在這個過程里,我一直使用Chrome在調度我的代碼。因為我是Android用戶,我有Google Play的賬號,便發布了Android版本。這時候遇到了一個問題,我並沒有Apple Developer賬號(現在在申請ing。。),而主要的用戶對象程序員,這是一群不土的土豪。

偶然間我才想到,我只要上傳Web版本的代碼就可以暫時性實現這個需求了。接著找了個AWS S3的插件,直接上傳到了AWS S3上託管成靜態文件服務。

幾天前在Github上收到一個issue——關於創造桌面版, 我便想著這也是可能的,我只需要寫一個啟動腳本和編譯腳本即可。

所以,最後我們的流程圖就如下所示:

除了顯示到VR設備上,好像什麼也不缺了。並且在我之前的文章《Oculus + Node.js + Three.js 打造VR世界》,也展示了Web在VR世界的可能性。

在這實現期間有幾個點可以分享一下:

  1. 響應式設計
  2. 平台/設備特定代碼

響應式設計

響應式設計可以主要依賴於Media Query,而響應式設計主要要追隨的一點是不同的設備不同的顯示,如:

這也意味著,我們需要對不同的設備進行一些處理,如在大的屏幕下,我們需要展示菜單:

而這可以依賴於Ionic的expose-aside-when="large",而並非所有的情形都是這麼簡單的。如我最近遇到的問題就是圖片縮放的問題,之前的圖片針對的都是手機版——經過了一定的縮放。

這時在桌面應用上就會出現問題,就需要限定大小等等。

而這個問題相比於平台特定問題則更容易解決。

平台特定代碼

對於特定平台才有的問題就不是一件容易解決的事,分享一下:

存儲

我遇到的第一個問題是數據存儲的問題。最開始的時候,我只需要開始混合應用。因此我可以用Preferences、或者SQLite來存儲數據。

後來,我擴展到了Web版,我只好用LocalStoarge。於是,我就開始抽象出一個$storageServices來做相應的事。接著遇到一系列的問題,我捨棄了原有的方案,直接使用LocalStoarge。

數據分析

為了開發方便,我使用Google Analytics來分析用戶的行為——畢竟數據對我來說也不是特別重要,只要可以看到有人使用就可以了。

這時候遇到的一個問題是,我不需要記錄Web用戶的行為,但是我希望可以看到有這樣的請求發出。於是對於Web用戶來說,只需要:

trackView: function (view) {
console.log(view);
}

而對於手機用戶則是:

trackView: function (view) {
$window.analytics.startTrackerWithId("UA-71907748-1");
$window.analytics.trackView(view)
}

這樣在我調試的時候我只需要打個Log,在產品環境時就會Track。

更新

同樣的,對於Android用戶來說,他們可以選擇自行下載更新,所以我需要針對Android用戶有一個自動更新:

var isAndroid = ionic.Platform.isAndroid();
if(isAndroid) {
$updateServices.check("main");
}

桌面應用

對於桌面應用來說也會有類似的問題,我遇到的第一個問題是Electron默認開啟了AMD。於是,直接刪之:

&
//remove module for electron
if(typeof module !== "undefined" amp;amp; module amp;amp; module.exports){
delete module;
}
&

類似的問題還有許多,不過由於應用內容的限制,這些問題就沒有那麼嚴重了。

如果有一天,我有錢開放這個應用的應用號,那麼我就會再次獻上這個圖:

未來

我就開始思索這個問題,未來的趨勢是合併到一起,而這一個趨勢在現在就已經是完成時了。

那麼未來呢?你覺得會是怎樣的?

源碼:phodal/growth · GitHub

更多內容請關注我的微信公眾號:phodal

http://weixin.qq.com/r/mnVYQHrEVicprT4j9yCI (二維碼自動識別)


mvc框架,工程化,node,開發工具,頁面設計,移動開發。


前景如何我不知道.只是我現在去學PHP了.逃.


2016年React勢如破竹,找個starter項目早點學起來吧!

Awesome-react-boilerplate by jiji262


從需求量和薪資上看,應該是很好的。但是這麼多的新技術,除了大公司和一些年輕的創業公司,也不見哪裡用。。。累覺不愛。


我學後端的時候又想去搞移動端開發,搞移動端開發的時候又想去搞前端,搞前端的時候又想去搞後端;到現在,以至於我現在又去學計算機基礎知識了。


「拜師學藝」開始流行


達內那大沙包已經開始行動了!


16年底了,前端高度飽和的速度超過大家預計,11月已經找不到工作了,到了17年情況只會越來越壞,工作3-4年的中高級前端也會失業或者苟且在自己不喜歡的公司


沒那麼容易 沒那麼難 前景還行 死的人也是一片片的 活下來的也不少 就是個職業

指望入行就上萬的 那基本沒可能 都要一步一步點技能樹


不知道你么。我做這行四年。幾乎需求都可以滿足。只是。前兩天去面試。面試官說我停留在PS.CSS.JS所以也沒怎麼好。可能待的城市。待的公司有關。一直想換個可以好好學習搭搭框架的公司。現在的能力就是你給我PSD圖我可以很快的給你HTML.或者設計一個PSD圖。和後台工程師交互數據。但是自己遠未達到大師級別的能力。

有很多面試也不要我。因為我只有大專的文憑。

這個東西弄久了。就感覺千遍一律。也很想找到一個可以努力奮鬥的公司。但是實際情況總是很殘忍。現在的公司渾渾噩噩。一點奮鬥的感覺都沒有。

找工作。這個季節也沒有什麼人要。所以很多東西也不知道怎麼說。我自己也很浮躁了。做了這麼久。除了第一年技術上升很快以外。接下來好像都是第一年的重複。有可能是因為我在那個公司待了四年。第一年熟悉了運作模式。接下來都一樣了就。感覺自己現在超像在混日子。因為技術都一樣。我知道你們要說去自學。可是自學自己搞一個東西。沒有項目。真的比較難上手。


隨著我這種小白退出,行情會越來越好的(逃~)


2016年是前端井噴的一年,現在很多公司都開始著手設立前端工程師,前後端分離技術。不過需要精通某一種前端框架,每天學習一點點。。。


招聘陷阱越來越多,我都恨我去自己學的有點晚。好好的工程造價不做(問題是房地產不景氣,工造都被事務所賺錢了,我們苦逼造價員只有轉行)現在想學前端開發,自學了html和css基礎知識去,js還沒接觸,當然,全憑自己的一腔熱血和愛好,總覺得寫點東西出來卻超有成就感,希望現在學習為時不晚。準備報培訓班!

2016.07.06


推薦閱讀:

非計算機專業,怎樣找一份前端實習?
我想學習web前端是培訓好還是自學好?
Facebook 內部如何看待此次 React 專利事件?
前端工程師們,你們對前端的興趣是什麼?
HTML CSS JS很低級嗎?

TAG:前端工程師 | React |