兩年前端職業生涯總結

做者:TaylorPzreal
個人GitHub https://github.com/TaylorPzreal

時間如白駒過隙,2015年9月27日我抵達帝都的那個晚上還彷彿昨日,今後便開始帝都的工做生活,也正式開啓個人前端生涯。計劃於今年十一寫總結,迫於公司項目壓力,拖置如今,必需要作第二年的總結了,總結本身的這一年曆程並憧憬將來,也寫給須要的人。

來到帝都,我一直很感激三點,一是我司給予個人機會和成長的沃土,二是很感謝我司的兩位前端大神阿法哥和彬哥,是他們細心耐心的帶我,把我領進門,讓我有了快速的成長和信心,三是感謝我司的一些人,他們跟我談了不少,讓我更深入的去思考規劃將來,讓我看到了更大的世界和和更有意義的價值觀,讓我更深入務實的去思考問題,真的很感謝他們。

細細回想一下,今年大體作了這些事情:

### 時間線
1. 完成了我司兩個產品。(獨自負責前端架構,開發,優化,維護工做)(到今年四月底)
2. 準備公司的產品發佈會。(負責架構,開發等工做)(到六月底)
3. 公司的一個項目開發。(負責架構,以及協調其餘3位前端同事的開發,優化,維護工做)(七月份到十二月上旬)
4. 重構我司的產品。(負責架構,開發工做,以及推進我司分享學習氛圍)(至今)

### 技術線
1. 我司的第一款產品主要技術:angularjs@1.x,bootstrap3,requirejs,gulp
2. 我司的第二款產品主要技術:angularjs@1.x,bootstrap3,webpack
3. 產品發佈會: angularjs@1.x,bootstrap3,webpack,es6,代碼拆分按需加載
4. 項目:typescript,angular4,material,bootstrap4
5. 重構產品:react技術棧

### 其它
1. 閱讀《你不懂JS》 https://github.com/getify/You-Dont-Know-JS/tree/1ed-zh-CN
2. 《JavaScript權威指南》
3. GitHub今年提交了575Commits(https://github.com/TaylorPzreal),我司的Gitlab大約提交了1000多commits。
4. 寫了一個本身的網站 https://www.honeymorning.com/(因爲時間不多,還不完善,還在不時繼續開發,重構完善。前端Angular5,後段Nodejs,MySQL)
5. 寫了8個npm包,(https://github.com/TaylorPzreal),主要有意義的是,ngx-cropper,interpolate-webpack-plugin,awesome-react,create-awesome-react.
6. 在一些開源項目上面提供了一些微薄的幫助,如quill等,也參與了一些開源項目的測試,並提交了一些問題,好比angular/material2,angular/flex-layout,ng2-image-upload等
7. 常常瀏覽的社區,掘金,推酷,csdn,微信訂閱號
8. 看MDN,W3C標準
9. 刷題

如今談一下個人學習和成長總結。

2015年剛入行的我,是什麼也不會的我。前後有兩位大神帶我,讓我有了快速的入門和成長,2016年的年中左右,便開始獨立負責公司的另外一個產品開發工做。
第一階段:
最開始使用我司統一的架構,後來瞭解到了gulp,便開始看相關的官方文檔,看別人的踩坑指南,很快gulp就應用到了產品中。這個基於管道的工具很好用,確實對產品有了進一步的優化,其中主要優化了js,css,html,圖片這些資源的壓縮。

主要須要學習的就是gulp,瞭解gulp經常使用的插件,requirejs,angularjs1.x

第二階段:
後來瞭解到webpack這個構建壓縮混淆工具,開始看文檔寫例子,去了解它的不一樣與高級,後來對我司的產品進行了進一步的優化,我寫過的一個基於angular1.x的demo https://github.com/TaylorPzreal/webpack2-conf-test,主要的優化是,分塊打包,按需加載,並使用es6語法。

主要須要學習的是:webpack及相關插件,es6語法,基於angular1.x的代碼拆分按需加載

第三階段:
從2016年9月份angular2正式發佈,便開始不時的去了解學習angular2,今年7月份正式開始用angular4寫我司的一款項目。angular2是用ts語言寫的與angular1極不一樣的框架,用了以後我我的以爲比1好太多,很容易就能基於靜態路由,實現代碼拆分按需加載,基於組件式開發思想,很容易構建複雜應用,我用了不多的代碼就實現了一個樹選擇列表略微複雜的組件。還支持PWA,ng5還默認支持AOT,響應式編程。TS語言自己又有很大的好處,能避免不少沒必要要的錯誤。

主要須要學習的是:typescript,angular5,PWA,rxjs

第四階段:
從12月份下旬開始,正式學習React技術棧準備重構我司的產品,爲何用React,考慮了不少因素,我的以爲React目前是最火的框架,尤爲RN當前的火熱,vue很優秀,社區成長也很迅速,據說入門也極其簡單,angular5在中國的使用還不是很廣,從招聘數據看來angular5使用的人遠少於react,vue,但到底哪個是最好的,我也沒有結論,可能只有等我都試用瞭解一下,才能知道每一個的差異,試用場景。目前正在踩坑React技術棧。到目前卻是發現了兩點:

1. angular5是一個框架,你幾乎只須要安裝不多的額外插件即可以進行產品項目的開發。
2. React只是一個view層,你還須要搭建不少的庫插件,來構建產品的開發框架,略微麻煩一點。學習成本略高一些相比angular5。

主要須要學習的是:react,react-router,redux,react-dom
目前寫了一個通用的框架awesome-react,github地址 https://github.com/TaylorPzreal/awesome-react,涵蓋了一些基本的功能,支持Dll,webpack的DEV和Prod不一樣構建,支持fonts,圖片,css modules,scss,commintlint,jest測試,eslint全部的jsx,一鍵格式化全部的代碼,還在繼續完善, 也寫了一個CLI create-awesome-react,https://github.com/TaylorPzreal/create-awesome-react,能夠更方便的新建基於這個框架的基本項目。

前端發展實在迅速,還有更多的庫,插件或技術使用過以及準備有選擇的更深刻的研究應用:
rollup,GraphQL,Koa2,express,docker,d3,threejs,jointjs,electron,ionic,RN,apolla,DL,微服務,中間件,H5 game,websocket,GoLang,Firebase。。。

整體來說,個人學習過程有這樣幾點:
1. 經過社區等渠道瞭解到一些高效技能庫框架
2. 看官方文檔,通常都有英文和翻譯的中文文檔
3. 看別人的踩坑,經驗
4. 看看源碼
5. 本身動手去寫測試demo
6. 合理安排時間
7. 遇到問題時刻記得:Read-Search-Ask,1).多讀題,多讀錯誤信息,本身盡力思考,2).google,3).最後再去問別人。

兩年學了這麼多,我很精通嗎?坦白講,根本不精通,也只算達到了熟練使用,能進行熟練的開發,seo,維護等工做,底層的實現不懂啊,也沒太多的時間去搞懂。記得有人說過,少折騰框架,多研究原生深度,從時間和精力上講多去精通JS這都是最有益的,精通了JS再去學習其它會更受益。固然對於工做,我以爲首先是能工做,會工做,再作好工做,對於時間緊迫的前端就是先去了解N多庫的使用,再去研究深度。

如今,在推薦一些我整理的學習資源:
* 視頻:幕客網 https://www.imooc.com/
* 視頻:優達學城 https://www.udacity.com/
* 視頻:可汗學院 https://www.khanacademy.org/
* 圖片字體取色:
https://www.pexels.com/
https://www.iconfinder.com/
https://www.storyblocks.com/stock-image
https://webkul.github.io/coolhue/
http://colorhunt.co/hot
* 電子書: 圖書資源網站,幾乎全部圖書電子版均可以搜索下載到 http://b-ok.org/
* 社區:CSDN,掘金,前端網,知乎專欄,DZone,Medium,sitepoint, Google+
* 刷題:
https://leetcode.com/
https://www.codility.com/
https://www.freecodecamp.org/

還有不少,目前就這些吧,多了你們確定也不看

這兩年,也讓我有了一些新的思惟。在這個發展迅速的時代裏,咱們必須適應並接受時代的發展趨勢,革新思惟,努力進取,提升本身的格局,變通本身的思惟,給本身一個遠大的目標,劃階段去一個個突破實現。在咱們這個能吃苦的年紀裏,不要選擇安逸。成功是一件很難的事情,須要你精心的設計和堅持不懈的艱苦奮鬥。世界很大,不要活在周圍人的世界和格局裏,不要在意眼前的利益,時間的巨輪在不停的向前推動,會有更多有意思的事情等着咱們去創造和體驗。

十年很長,不少事都發生了改變,一生過短,可能連一件事都作很差。我不喜歡安逸,但我更但願忙碌的有意義有價值,在我回首往事的時候,能讓我想起並懷念這段歲月時光。

展望2018年:
1. 精通JS/HTML5/CSS3
2. DL
3. GoLang

2018個人座右銘是,精益求精的工做,不拘一格的生活。

再見2017,2018您好!

附:最後祝願在新的一年裏,每一個人都身體健康,(今年7月到10月我連續三個月幾乎天天都凌晨1點左右睡覺,早晨5點半左右就起牀繼續coding,也中止了跑步,致使到如今掉了不少的頭髮,是的,我纔剛本科畢業兩年,很恐怖,如今都用上了霸王。。。)珍愛生命,年輕也必定要早睡早起,多鍛鍊。

寫於 2017年12月31日 北京 晚
css

相關文章
相關標籤/搜索