學習ES6的人可能都或多或少搜到這本書,阮一峰作為一個後來進入阿里的「網紅前端」也被圈內熟知,這本書一直作為ES6標準入門的首推在線閱覽書目,那麼該如何評價這一書呢


先來個自問自答吧,這是我讀此書的個人感受,就記下來當做書評。某些言論僅代表個人觀點,可能不適用所有人,希望大家只圖一樂。

原書鏈接

暮色

首先,拋開技術不談(這可能有點過分,一本技術書籍的書評竟然和技術沒多大關係,但是秉承「一千個讀者有一千個哈姆雷特」的原則,建議各位親自去拜讀此書,找尋自己的收穫),當然此評也不是廣告,因為阮一峰根本不認識我,我只是在學習ES6過程中了解到此書。再說一下為什麼此文不談技術,而更多地談的是我看此書的感受,因為就我長期對對於阮一峰的了解和關注,他本身也認為技術只是他生活的一部分,而不是全部,令他更開心的可能是他關於人生的感想整理成書——《未來世界的倖存者》並出版。的確,我的人生規劃也不會把技術看做多麼重要的東西,它只是我當下階段職業所需的技能,我會更多地從技術中抽取不同厲害的人或深刻或縝密的思維背後的哲學,用以加深我對這個世界的認知和理解。

新月

阮一峰本身不是搞計算機的,他寫的書卻成為技術圈的參考教科書,至少在ES6這一個知識點上,被大家廣為流傳借鑒,可見學問存在「大同」效應,即大道至簡。如果你是一個對於知識追求理解原理和本質的人,那麼在學習了一部分知識後,自然而然會對其他未學的東西有著開導的作用。比如舉個不一定恰當的例子,所謂舉一反三是什麼呢,在前端界我們都知道有三大主流框架React、Vue、Angular,那放給初學者可能就覺得要學的東西太多了,竟然要掌握三種框架,去不同公司,做不同項目可能都要用不同的技術框架,簡直像個學不完的無底洞。但如果是有一定經驗的人會怎麼看呢——舉一反三,三大框架本師出同門,都是用基礎語言Javascript經過不同的包裝形式封裝而成,所以高級開發經常會告訴初級工程師要打牢基礎,因為基礎好了,無論出現什麼樣的新技術都萬變不離其宗,這樣的學習方法就是舉一反三。吃透理解一個框架,對比地再去學習另外兩個,就會發現有很多相似的地方和思想,假如學習一門新技能需要花費10天的話,這樣學起來也就不是10x3=30天了,而可能是10+9+8=27天,甚至是10+7+3=20天或者更少。因為伴隨著你前面的積澱,再去學習新的東西,如果能利用上之前所學到的思想,大多情況下可能不會再用同樣多的時間,而是越來越快,至少相近的知識是這樣的。

月食

那麼回歸ECMAScript 6 入門這本書為什麼能夠一直被奉為學習ES6入門的首推寶書呢,可能讀過此書的人才能感受到。首先該書從2014年4月20號發生第一次github上的提交,在開源大家庭的共同維護下已經走過了五個年頭。那為什麼它會成為一本開源的書呢,作者自己當然有自己的想法,但我們也可以看到,其實阮一峰自己也經常提及自己不是計算機科班出身的事實,但這也不影響他能夠寫出幫助其他計算機專業的人學習的教材,也不妨礙他和技術圈的人合作產出,所以通過開源的方式,可以雲集世界各地的高手一同校驗、糾錯,歷史提交記錄中不乏一些很有價值的幫助,比如「fix: IIFE 不一定是匿名」、「修改示例代碼使其更精確」。另外我們可以從很多細節中感受出他對於這本書的認真態度和投入,比如最後一章所列舉的參考鏈接,就如同專業論文的參考文獻,既做到了對於參考內容的版權尊重,也幫助讀者對於某些知識點的追本溯源提供了便捷的幫助。同時,這也給人一種學無止境的感覺,當你花一段時間拜讀完此書時,認為自己已經做到了「ES6入門」,然而看到最後一章附註的參考鏈接,才發現你剛剛打開知識海洋的大門,你會發現自己學到的只是冰山一角,因為畢竟你讀完這本書可能只要花費不到一個月的時間,而作者寫成這本書卻要花費五年的心血,甚至更多。所以說——學無止境,任何時候你感覺自己已經會了,或者對於某個領域或某個知識點完全理解了,都是在阻礙你後面更大的進步。

破曉

再說一個令人咂舌的細節點,就我寫下此評的這一天(2019年05月21日17:27:02)打開該書的github地址,發現issues和pull requests欄目的待審閱數雙雙為零,乍一看還以為是此書封版了,已經完善歸檔,不再需要更新,或是作者設置為禁止其他人繼續提交改動了,但好像不是這樣。點開近期close掉的issue,發現剛發生在3天前,同時最近一次的pull request處理於4天前,看到這個足以令人震驚。因為逛開源圈的都知道,茫茫眾多開源項目,能夠做到這樣及時關注用戶反饋,對開源提交做出處理,達到0待處理issue和0待處理pr的開源項目實在不多,這有時也是從維護積極性維度衡量一個開源項目質量高低的核心指標,有些開源項目一開始很好,比如框架或者工具類的項目,大家會當做現成輪子去使用到生產中,但時過境遷,當項目中所使用的開源工具出現問題,由於是開源項目,所以項目作者就是項目的售後和客服,遇到問題了,如果從網上找不到太大的幫助,八成會回到github的項目原地址來看看issue或者pr中別人有沒有睬過同樣的坑,當欣喜若狂地搜索到結果後,迎面而來的可能是一盆冷水,就是這種問題的確也很多人遇到過,但作者已經很久沒有再維護此項目了,issue和pr中待處理的問題一堆,逐漸地人們可能會換用其他新的技術框架或方案,這樣的開源項目便也就此論為曇花一現。與之不同的是,阮一峰能夠持續地維護此書,的確值得欽佩。可能有人會說,這只是一本小書,文字內容為主,附以簡單的代碼片段說明,跟大的開源技術框架不能比,但我們這裡看到的是態度,一個人對於小的事情能夠報以認真嚴肅的態度,當面對大問題的時候大多能夠從容應對,畢竟還有分治策略不是嗎,大的問題大多可以拆解成多個小的問題的合集,繼而分而治之。就好比一個人從剛入職場做著簡單的崗位起,如果因為覺得基礎崗位所做的事情簡單無趣而不能認真對待,那麼怎麼能夠得到晉陞去做更大事情的機會呢,相反能夠在基礎崗位做出優異成績的人大多穩步發展,逐步上升,成為厲害的人,這才是我們應該學習的態度。千里之行始於足下、高樓萬丈平地起,這樣的道理我們從小學時期就受過教育,只是很多人在成長的過程中都丟掉了。

原文鏈接


挺好的。我ES6開始學就是看的這本書。線上電子版隨便在線看,覺得不錯再去買書也不遲。

把知識寫的清晰易懂不是一件容易的事,需要花費很多精力、時間,而且排版看著美觀也是一個耗費精力的事,你看看阮一峰的博客文章排版就知道,這本書線上版本的排版是精心設計過的(沒有對比沒有傷害...),很棒!

如果說推薦一本ES6入門的書,我覺得這本很好!


謝邀『』

阮老師,一直致力於IT前沿,這本書對於新手入門及其有幫助,而是循序漸進,有助於更深層次理解(可以先看一下我的個人整理,一些常用的es6均在文章內)

KEYCODEK:es6 (持續更新中)?

zhuanlan.zhihu.com圖標


這本書質量非常高,深入淺出,邏輯清晰嚴密,可以看出阮一峰老師作為成名已久的博客產出作者的寫作水平。雖然ES6內容及其龐大,但是阮老師還是細膩的講述著每一部分,力圖教會人們新規範的特性,還使用了大量範例展示新特性的應用場景,以及這些新特性為了解決的問題。

但是我想說一說javascript。作為和java同期產生的語言,我不得不感慨js發展速度之慢,或者說,亂。書中也提到了, ECMAScript 3.0在1999 年 12 月就發布了,3.0 版是一個巨大的成功,成為通行標準,奠定了 JavaScript 語言的基本語法,直到今天,學習JavaScript大部分還是在學 3.0 版的語法。

2000 年,ECMAScript 4.0 開始醞釀,但是由於太過激進,各方對於是否通過標準產生了巨大的分歧,於是作廢。直到2011年11月,ECMAScript5發布,成為ISO國際標準。2016年,ECMAScript6正式發布,成為新的國際標準。

而重點就是,"ECMAScript4最後沒有通過,但是它的大部分內容被 ES6 繼承了"。

學習這本書的時候應該也可以體會到,大量的語法擴展,解構賦值、默認參數、class,這些特性都沒有改變原生語言的功能、單純為了簡化代碼或者增強可讀性。

java1.5、1.6,C++上世紀玩兒的東西,javascript在歷經20年之久的發展後終於開始借鑒和效仿。

我不知道15年前的那場會議發生了什麼,導致一種語言發展道路上的重要提案被否決,或許是為了兼容IE?總之今天讓我學習諸如此類的內容,我實在感覺力不從心。

以 Yahoo、Microsoft、Google 為首的大公司,反對 JavaScript 的大幅升級,主張小幅改動;以 JavaScript 創造者 Brendan Eich 為首的 Mozilla 公司,則堅持當前的草案。

還是創始人了解自己的孩子啊。當初通過了ES4,現在也不至於ES6相比ES5發生翻天覆地的變化。ES6標準的新特性還沒實現幾個,ES7又開始制訂了。

最近蘋果、谷歌、微軟組成的WHATWG又在和W3C爭奪標準制定權,前端真是混亂的真實,最受影響的還是語言本身。希望瀏覽器廠商和國際標準組織還是能放下擱置,共同進步吧


不管怎樣,都要說一句阮一峰老師辛苦啦!

很多做技術的都喜歡踩別人,這樣才顯得自己「高明」。但是說實話各種博客甚至標準文檔都難免有紕漏、不可能全部覆蓋到所有知識點,但是只要能從中學到東西,我們就應該去感恩!

沒有誰的博客或文章就是沒一點紕漏的,實踐是檢驗真理的唯一標準,越深入越明白這個道理。


推薦閱讀:
相关文章