畢業快8個月了,真正出來社會也快8個月了。
最近突然不知道從哪裏聽到這樣一句話,你還算是一個前端工程師嗎?會不會廢了?css
第一次聽到這句話時,我就陷入了思考。html
思考着本身仍是不是一個前端了,由於這幾個月以來作的工做不僅是UI重構、UI交互,還有利用Node Koa框架搭建的先後端分離、以及純Node Koa搭建的一套CMS管理系統。前端
也許後二者能夠說我不是一個前端了吧?我帶着這樣一個疑問,繼續思考着。java
仔細想一下,貌似有個叫全棧工程師的名號,這個高帽子我仍是沒有勇氣戴的,雖然我是科班畢業,各類計算理論都略知一二,java後端也瞭解過,node後端親自寫過並做出了一些成績。可是對於剛畢業的大學生來講,我仍是懷揣的一個敬畏的求知的心去對待周圍的一切。node
下面是我對於前端這個職位的一些理解,同時吸取了互聯網上的一些見解。webpack
寫在前面:在Web中,前端是數據的第一消費者。若是符合這條,那麼均可以算是前端的職能,不管是在Server端仍是Web端web
下面說下前端職能的分類:編程
一、交互型gulp
這類職能是前端工程師這個名稱自誕生以來最爲重要的職能,換句話說就是咱們一般說的頁面重構、頁面交互、高逼格點說就是用戶體驗、數據可視化。後端
例子:通常Web頁面、Web遊戲、APP內嵌H5網頁(混合編程)
二、服務型
服務型能夠細分爲兩類:Server端、Web端,可是有一個共同點,路由都是前端來控制
server端:以node搭建的站點,包括純node站點以及採用先後端分離的站點。
Web端:以一些瀏覽器端的MV*前端架構,如AngularJS、CanJS、BackboneJS等框架搭建的站點
三、工具型
這類職能主要是提升工做效率,減小重複性勞動,加快大型前端項目的構建
使用的工具如grunt、gulp、webpack等,工具層出不窮,解決的問題基本都是同樣:代碼解析和壓縮、字符串拼接、html模塊化、css模塊化、js模塊化、圖片壓縮、功能組件化等
還有兩外一種:前端通用腳手架,腳手架的意思就是簡單框架的意思,可是有還不到框架的級別,只是把通用的部分提煉出來。
四、理論型/架構型
這是一種比較高級別的職能,通常沒個8年10年是達不到的。
主要是研究一些新理論、新概念,並嘗試從其餘語言中吸取優秀的部分,來彌補JS的不足。
好比:ES6引入了不少新的語法,class概念(雖然只是語法糖)、yield語法、模塊化等,在React還未提出前,也必定是先有了Virtual DOM的概念,纔有了最終的React。
如今再來看我仍是不是一個前端?明顯仍是一個嘛~~只是涉及的範圍比較廣,而我我的以爲對於剛畢業的人來講,知識的廣度遠比深度要重要。
因此接下來我會繼續在一、二、3這三類中耕耘,也許10年後會在4中繼續發揮本身的價值。
前端自從有了正式的名字開始,就在發生翻天腹地的變化,咱們要作的就是積極擁抱這種變化,而不是問一些相似你仍是不是前端的問題。
以上純屬我的看法,若有理解不對的地方,望指出。