Daguo的每周清單:第一期
新年新氣象,還沒來得及總結17年,我決定先給18年立個flag:每周輸出一份技術學習清單。
每周梳理清單的原因?
其實從2年前自學編程開始,我每周基本都會讀到許多技術文章和文檔,也看過很多的書籍以及視頻教程(確實很低效,但不得不說幫我熬過了一段枯燥的時間),然而很多知識一旦沒有實踐很容易學過就忘了,對於工作量飽和的我來說,似乎又很難有時間去實踐每個技術點。
為了能在項目和工作中,遇到技術難題,快速和過往的知識建立起聯繫,提高解決難題的思維和能力。我決定記錄下學過的一些內容,通過回顧,總結學到的知識,以加深對技術的理解。沉澱一些東西,同時推薦一些我個人覺得比較好的技術文章和工具。
還有一個原因就是,想寫點東西。有人說寫作,英語和編程(可視化的,AI發展起來之後)可能會是以後人類最需要掌握的能力,我很認同,所以也算練習一下吧,突然想起來我好像好久沒學過英語了。
和其他技術期刊的區別?
近年來國內前端技術領域生態十分繁榮,有很多高質量的期刊,像前端之巔,碼農周刊,前端早讀課我都一直有關注和閱讀,我每周的總結推薦里,很多文章可能都是源於這些期刊。區別於其他技術期刊,這個每周清單純粹是我自己學習過程的一個記錄和總結,我會回顧每周我學習的技術內容,做一些梳理和推薦。因為工作任務過於飽和,來不及驗證和校對,可能有片面的描述或不嚴謹的內容,歡迎隨時指出。
會整理哪些技術內容?
- 前端基礎:夯實基礎知識
- JavaScript生態:不誇張地說,JS可能要一統天下了
- 技術視野:開闊眼界,才能和大佬談笑風生
- 流行風口:想發技術財就緊跟風口走
- 工程實踐:指尖躍動著茶軸,實踐出真知
- 良心推薦:努力沒有用,那一定是效率問題
- 心得&吐槽 :思考總結,負能量垃圾桶?
另外還有不定期欄目:服務架構(流量大了怎麼玩),編程思想(寫健壯漂亮的代碼),奇技淫巧(原來還有這種操作),書評推薦(也可能有非技術類的書或者電影),效率工具(提高生產力)內容比較少的話也可能直接就放在推薦裡面了。然後根據每周的實際情況也會有對應的技術整理,比如我有幾周突然就被分配去研究Iot物聯網應用了,那麼可能會出現很多Iot的文章推薦。
Daguo的每周清單
這是首期試驗版,外部鏈接有些可能需要科學上網才能訪問。
前端基礎
- Lodash源碼中的那些迷人的細節
lodash是underscore的一個超集,兩者作為npm下載量最大的兩個包,其提供的工具函數極大地提高了前端開發人員的開發效率。即使如今ES6已經相當普及,用原生JS已經可以完成一些lodash,API的工作,不過毫無疑問Lodash的實現更加可靠高效,不過我還是習慣於直接用原生的介面寫代碼,雖然它們都只是語法糖而已。Lodash源碼要比很多框架的好解讀一些,其中蘊含了許多有趣的JS編程技巧。
- 全新Chrome Devtool Performance使用指南
在實際開發過程中,我們在做性能優化的時候,常常無從下手,或者說直接應用業界通用的一些優化手段,但是並不知道實際的效果到底如何,這個時候就是我們又一次感嘆Chrome自帶的開發者工具的強大的時候。
JavaScript生態
- Nodejs區塊鏈技術
用Nodejs開發加密貨幣,而且目前github上主流的區塊鏈項目大部分就是用nodejs寫的,不得不說現在Javascript真的是啥都能寫,讓我不禁想起那句,能用JavaScript實現的,最終都會用JavaScript實現。對於最近的技術風口,區塊鏈以及Nodejs有興趣的話,那這本電子書真是太適合了,我還沒讀完,決定要好好研讀一番。
技術視野
- 微前端概念解析
我一直以來認為微服務只是後端的概念,知道讀了這篇文章,作者提出微服務架構思想同樣可以應用於前端,可以將一個應用拆分為多個端到端團隊,每個團隊都有自己對應的前後端服務,前端也可以運用不同的框架,構建工具。
- 微信小程序官方開發框架WePY
我們了解到小程序的開發過程其實有自己的一套服務介面,這給其他平台的遷移造成了一定的難度,雖然它設計的介面都很簡單,但是依然有成本。在自己的生態里造出一套開發介面玩,大概也就微信和蘋果ios這些大佬敢玩吧,當然ios似乎過分多了。可能是鑒於小程序開發存在的移植性問題,在小程序正式發布近半年後,微信團隊開發並開源了小程序開發框架WePY,讓開發者只需要開發一套代碼,通過框架可以自動適配到多個環境,包括小程序,H5還有Native端,同時還能使用像組件化,狀態管理等web端常用能力,這就是WePY的作用。另外基於vue編碼風格,也是非常容易上手。
- 用深度學習自動生成HTML代碼
陳獨秀先生,請收下我的膝蓋,這paper也太秀了。之前就想過,不說交互效果和JS實現,將設計圖的切圖轉成HTML和CSS應該是可以實現的,就像爬蟲爬文章標題,爬日期,都是有規律可詢的,只是往往我們要將這些規律做一個梳理,再把這些轉換規則寫到代碼裡頭,其實跟很多自動化的工具思路是一樣的,將所有的情況實現考慮,後面就是自動完成的事情了。現在有了深度學習,只要提供足夠的豐富樣本,就可以自動的整理出這些規則,將設計圖轉換為實際代碼了,相比人為識別,可以總結出更多的場景,提高轉換工具的適用性和可靠性。
流行風口
- 微信推出小遊戲,跳一跳開啟第一波微信小遊戲紅利?
小遊戲的運行環境是小程序環境的擴展,基本思路也是封裝必要的 WEB 介面提供給用戶,儘可能追求和 WEB 同樣的開發體驗。小遊戲在小程序環境的基礎上提供了 WebGL 介面的封裝,使得渲染能力和性能有了大幅度提升。不過由於這些介面都是微信團隊通過自研的原生實現封裝的,所以並不可以等同為瀏覽器環境。目前,流行的HTML5遊戲引擎Cocos、Egret、Laya 已經完成了自身引擎及其工具對小遊戲的適配和支持,對應的官方文檔已經對接入小遊戲開發做了介紹。
- Node-RED構建你的第一條IOT應用流
起初是因為需要為產品數字化轉型做技術儲備,所以需要了解一些業界的IOT技術,然後發現了Node-RED這個框架,基於可視化模塊流編程的物聯網應用開發工具,又IBM開發維護。結合NPM可以下載擴展包,快速地開發一個IOT應用demo,我用它的HTTP服務快速地搭建了一個紅外感應監控的IOT應用,當然了,由於是Nodejs平台框架,所以用到的模組需要支持跑Node服務才行,我簡單粗暴地用樹莓派來作實驗,很快就能構建好一個應用。依託IBM物聯網平台還可以做很多商業化地開發擴展。
工程實踐
- 微信小程序商城demo
小程序商城的通用化demo,已經實現了基本的商品管理,購物城管理,優惠券管理,地址管理等等page,同時配合api工廠可以快速開發出一個商城應用,花了兩天時間以這個demo為基礎,熟悉了小程序的開發模式和語法,雖然說小程序不支持組件化,但是以page為單位的頁面,其實已經可以解決復用性的問題,而微信提供的界面UI也非常簡單,查閱文檔,運用好API就行了,也不做其他的封裝,因為小程序本身的大小有限制,本來就不太可能做業務複雜度太高的應用,所以很多在Web端流行的功能並沒有在小程序端實現,WePY只是一個可選項,並不必要。
良心推薦
- 小程序API工廠
對於前端來說開發完成小程序後,往往還需要有對應的介面才能順利交付,這個Paas平台支持訂閱各種API,圍繞小程序商城實現了很多介面,提供了配置管理頁面,還很貼心的支持域名跳轉(也就是說你可以把一個域名跳轉到這個Paas服務平台的管理頁面上,這個功能大概是讓開發者可以忽悠一下需求方這是個自己實現的後台?),同時平台也在不斷豐富API類型,除了小程序後台,也可以拿這些api開發其他web應用,非常好用,重點是它是完全開源免費的,簡直是周末做個小項目賺外快的利器啊。
心得&吐槽
最近心情總是很忐忑,覺得自己這段時間成長太慢了,也許是對於剛畢業的黃金時間期望太高了。新的一年裡要重拾心情,虛心學習,少說多學。成就感要在自我實現里找,不要浪費太多時間在外部環境。下周開始進新的項目組開發,主要會用到Vue的技術棧,接下來要好好研究下Vue了,由於有一些重構React代碼的工作量,所以應該還要好好看看React。這也是個好的契機,安心學技術的同時,看看大項目是怎麼運作的。
前幾天一個內部IT產品生產環境出了問題,附件上傳保存失敗,無提示,用戶反映後2天才修復,印證了比利老哥那句嘲諷:邊緣產品你想造個二級事件都難,哈哈。
說幾個最近改變我認知的情況,其中緣由就不說破了:1、以前完全不關心保健品,上次去香港買了幾瓶。2、由於信仰高效學習的信條,讓我處理事情變得圓潤起來。3、屏蔽廣告商廣告後,廣告商賺了,廣告投放的平台虧了。4、在互聯網上你看到什麼,很大程度上取決於你想看什麼。5、戴上MDR-1000X,原來世界如此安靜。
最後
還有不到一個月就春節了,最後再簡單說去年下半年來的生活吧。基本就是一個畢業生剛工作時最普遍的狀態吧,學著融入工作,社會,觀察著周圍新的人和事,加著班,吐著槽。熟悉了業務和工作方式後,慢慢適應,然後勞累地結束周復一周的工作。
工作內容雖然有很多重複,但是對於技術新人和職場菜鳥來說還是有很多可以挖掘學習的地方,把自己原先空白的認知慢慢地填補上去,這算是工作里最大的樂趣吧。學習方式還是按著自己的節奏來,新技術基本上看官方文檔配合一個簡單項目的demo就可以入門,後端學習過程中有一些阻力,因為入門的資料會少一些不過也問題不大,另外英文學習要加強。日常工作的備忘,問題,工作量都記在keynote上面,對效率提升和總結很有幫助。為了整理思路輸出,房間牆上整了一塊大白板,可以粗略地做一些梳理。開始接觸聽音這類學習方式,所謂文科生聽為你讀詩,理科生聽知識內參,內參的知識點都比較精闢而且是最新的,每天上班路上會聽大概十分鐘把握下行業動態和發展趨勢。
工作以外,所剩不多的業餘時間還是過得比較單調隨意,因為還是要為工作狀態休養準備。根據豆瓣的記錄,看的電影和書籍比上半年在學校要明顯減少。再看了下rescueTime的記錄,大部分娛樂時間還是花在看綜藝,直播,刷知乎和即刻上面,綜藝主韓綜,直播只看浪師傅,木魚水心和敖廠長的up基本都看了。以前玩遊戲覺得是很好的放鬆方式,現在覺得那都太吸神了,所以也把switch從上半年的想買清單去掉了。新番基本都不看劇情類了,偏治癒和搞笑的,比如某國漫南國篇。入冬以來好久沒打球了,不過偶爾看到集錦依然熱血沸騰。健身同樣入冬以來有所減少,不過倒還是一直堅持。其他像理財知識,房價,汽車,社保等內容都抽空去了解了一些,覺得這些都是早晚需要知道的內容。其中對於理財比較有感,學習過程中多次感受到資本力量的可怕,另外由於買房不實際,為了給攢錢找個理由,還定了個買某200型號車的目標。
深圳生活。坂田的生活其實還是挺不錯的,雖然我經常自嘲郊區,但是郊區物價是真的實惠,已經去過很多家好吃又便宜的餐館了,周邊基本的設施,商城,電影院,羽毛球館,籃球場都齊全。周末和朋友去市內雖然得轉乘才能到地鐵站,但是已經比在成都科大上學的時候要入市方便多了。住在佳兆業雖然沒有小區籃球場,一開始還挺無法接受的,後來在這裡度過了許多個靜謐的周末下午,竟然也覺得很喜歡了。
第一期廢話比較多,以後每周清單就只有技術總結和推薦,希望能堅持~
推薦閱讀:
※學web前端開發:給新手的的六個建議
※Git教程學習筆記
※對React一些原理的理解
※js 圖片輪播
※大齡電力汪前端學習路(HTML基礎篇)