2017 年一定不要錯過的五本編程書籍 | Phodal 書單

最近幾個月看了不少書,覺得有幾本甚是不錯,如乾貨滿滿的《編程風格》,概念普及中的《Serverless架構:無伺服器單頁應用開發》。便撰文一篇,簡單地介紹一下這幾本書。

推薦的這幾本書,都是一些系統性思考的書籍。因此,形如《深入理解 ES6》這種偏向於技術細節的書,建議大家按自己的需要去閱讀。

乾貨推薦:《編程風格》

《編程風格:好代碼的邏輯》 是我在最近看的一本書,這本書蠻有意思的。它讓我聯想起了 GoF 的《設計模式》,只是《設計模式》一書多以 C++ 以例,並且對新手來說過於抽象。好了,扯遠了。 GoF 總結出了 23 種設計模式,這些設計模式都會在日常的代碼設計中體現。而《編程風格:好代碼的邏輯》一書,則更側重於講述在代碼設計過程中的一些思想。

如果讓我們對這些編程概念應用,進行一個按層級的劃分,從頂層到底層應該類似於(按個人理解):

DDD -> 微服務 -> 應用架構 -> 設計模式 -> 編程風格 -> 演算法與數據結構

按我對這本書的理解,書中的編程風格很有意思,在某些地方與設計模式重合,在哪些地方又偏向於代碼實現設計。

這本書使用的是 Python 語言,書中的內容是:以 33 種代碼風格來實現一個業務功能,即詞頻統計。這就好比是,我們布置了一個作業題下去了,然後 33 個人交出了不同的答案。兩三年前,當我開始閱讀公司面試的代碼作業,總會看到一些新奇的解決問題的思路。每每如此,總會感慨一下,為什麼我想不到這個方法。

因此,這就是這本書的可貴之處:一個功能的 33 種實現。如書開頭的時候,是以早期資源受限(內存)的風格講起,在今天多數時候我們並不會考慮內存問題。隨後,又介紹了 Forth 風格的詞頻統計演算法,即以堆、棧的形式來進行計算。一步步按不同的風格演示,直至越來越高級的 MapReduce、MVC 風格、RESTful 風格。

儘管從某種意義上來說,這不是一本非常有價值的書,不能幫助你完成工作。但是,它是啟發我們進行更多的代碼級思考。

乾貨推薦:《JavaScript 框架設計 第2版》

如果你是一個工作 1~2 年的前端工程師,那麼相信在完成工作方面,你應該不會有什麼問題。正在琢磨怎麼深入前端領域(又或者,開源、KPI、升職加薪),那麼你可以試試閱讀這本書。

記得我剛工作的時候,我看到了這本書的第 1 版,於是自己就去造一些前端的輪子,即多年前的 Lettuce。與閱讀開源軟體相比來源,自己去造一個相似的輪子,是一個更有效的方法。在這個過程中,我們還會去剖析一些現有的輪子,從中 GET 到一些新的技能。

而與上本書相比,《JavaScript 框架設計 第2版》與時俱進地添加了更多的東西。在上一版的時候,諸如 class、選擇器等等的東西保留了下來,又增加了一些諸如 React、Virtual DOM,以及作者的 Avalon 等等的內容。這些可以讓我們更清楚地看到,框架背後的思考,能幫助我們造出更好的輪子。

概念推薦:《Serverless 架構:無伺服器單頁應用開發》

(PS:如標題所說,如果你想了解更多概念,就來看看吧)

作為一個程序員,你可能會時常想著自己做一個產品。而如果你只是一個前端工程師,那麼你可能會對後端感到一絲絲恐懼。這個時候,你不妨試一試 Serverless,即:你的後台運行在 Web 服務之上,而不是 Web 伺服器

傳統的後台,我們需要自己登錄到伺服器,然後部署上我們的應用。因此,我們要關心的不僅僅是應用本身,還有伺服器運行的操作系統、網路服務等等,以及資料庫和系統的可擴展性。而 Serverless 則是,我們使用 Lambda 服務編寫一些業務邏輯,並設置好資料庫、認證授權、日誌等等的一系列服務,那麼我們再去完成前台部分的邏輯即可。

這本書主要是以雲計算的老大 AWS 而介紹的,這本書可以讓你對未來有一些更好的看法,嘗試一些更有意思的東西。當然了,你最好有要一個 AWS 賬戶,AWS 提供一年的免費試用,前提是你有 VISA 賬戶。

概念推薦:《 Spring Cloud 與 Docker 微服務架構實戰》

(PS:如標題所說,如果你想了解更多概念,就來看看吧)

推薦這本書的原因是,這本書的一些內容和我們公司之間的 workshop 有很多的內容是重合的。這是一本寫給新手看的微服務書籍,建議有經驗的讀者就不要考慮了,網上的資料有很多。當然如果你有錢,又沒有時間,那麼你就可以買、買、買。

畢竟這是一本主要以介紹 Spring Cloud 為主的書,而不是一本介紹微服務的書。因此,只是實踐 Spring Cloud 或者理解概念,那麼這本書相當的不錯。

概念推薦:《 Cloud Native Go: 構建基於 Go 和 React 的雲原生Web應用與微服務》

(PS:如標題所說,如果你想了解更多概念,就來看看吧)

聽聞公司在推薦學習 Cloud Native,嚇得我去買了本 Cloud Native 書,然後我就後悔了:Cloud Native 從某種意義上來說是一些最佳實踐的合集——微服務、DevOps、持續交付等等。

同樣的,這也是一本概念性 + 實戰的書籍,只是用的是 Go 語言,不過只有最後一章講到 React。因此,建議 1~2 年經驗的開發者可以試試,如果是多年經驗的,那麼建議閱讀《十二要素方法》。

無理由推薦:《拍出絕世美姿》

下個月就是國慶節了。

如果你有女朋友的話,那麼你一定需要這本書。

如果你沒有女朋友的話,那麼你更需要這本書。

啊哈哈~~,論怎麼出去勾搭妹子。

怎樣,來份關注?


推薦閱讀:

看了三年的羅振宇跨年演講,你可以學會的5個演講套路
勇敢冒險比數據分析更有價值

TAG:前端开发 | 互联网 | 书籍 |