JAVASCRIPT之美|聽頂尖程式設計師闡述他們的思維

Book description

「閱讀此書有如聆聽一群JavaScript大師談論他們的想法,聽完會對這個語言有全新的體會,讓你的下一個專案更好。」
-Dave Camp, Firefox工程總監

JavaScript或許是世上最兩極化且最被誤解的程式語言,許多人嘗試要換掉它作為網路語言的角色,但JavaScript還是存活、演化且十分活躍。為何一個趕工出來的語言會如此成功,而其他語言卻失敗了?

這本書帶你一窺JavaScript專家的珍貴觀點。Jacob Thornton、Ariya Hidayat、與Sara Chipps等各領域的高手展現對此語言的熱愛,無論是將可怕的特徵轉換成實用的工具,或是將JavaScript應用於展現自我。

Table of contents

  1. 封面
  2. 書名頁
  3. 英文版權頁
  4. 目錄
  5. 前言
  6. 第一章 Mixin之美
  7. 類別性繼承
  8. 原型
  9. Mixin
  10. 基礎
  11. 使用案例
  12. Mixin
  13. 典型mixin
  14. extend函數
  15. 函數化mixin
  16. 加上選項
  17. 加上快取
  18. advice
  19. 總結
  20. 第二章 eval與特定領域語言
  21. 關於「eval是邪道」
  22. 歷史與介面
  23. 效能
  24. 一般運用
  25. 樣板編譯器
  26. 速度
  27. 混合語言
  28. 相依性與範圍
  29. 產生出的程式碼的除錯
  30. 二元樣式搜尋
  31. 最後一些想法
  32. 第三章 如何畫Bunny
  33. 何謂rabbit?
  34. 何謂bunny?
  35. 這與JavaScript有什麼關係?
  36. 這麼多變化,哪一種才是對的?
  37. 這如何影響教學?
  38. 這是藝術嗎?重要嗎?
  39. 這看起來像什麼?
  40. 我到底讀到了什麼?
  41. 第四章 團隊有太多的選擇
  42. 認識你的受眾
  43. 愚蠢的好
  44. 用類別
  45. 風格規則
  46. 程式碼的演化
  47. 結論
  48. 第五章 修改JavaScript建構元使模型更和諧
  49. 分生
  50. factory的微縮模型
  51. 建構元身份危機
  52. 可擴展性
  53. 結論
  54. 第六章 一個世界,一種語言
  55. 一個動議
  56. 選擇的矛盾
  57. 全球語
  58. 第七章 數學表示式解析器與求值器
  59. 語意分析與字符
  60. 語法分析器與語法樹 (1/2)
  61. 語法分析器與語法樹 (2/2)
  62. 樹遍歷者與運算式求值器
  63. 結論
  64. 第八章 演化
  65. Backbone
  66. 新的可能
  67. 第九章 錯誤處理
  68. 假設你的程式有錯
  69. 假設你的程式有錯
  70. 拋出錯誤
  71. 何時拋出錯誤
  72. 錯誤型別
  73. 自訂錯誤
  74. 處理錯誤
  75. 瀏覽器中的全域錯誤處理
  76. Node.js中的全域錯誤處理
  77. 總結
  78. 第十章 Node.js的事件迴圈
  79. 事件驅動程式設計
  80. 非同步、非阻斷I/O
  81. 同時性
  82. 加入任務到事件迴圈
  83. 第十一章 JavaScript是...
  84. JavaScript是動態的
  85. JavaScript可為靜態
  86. JavaScript是函式性的
  87. JavaScript萬能
  88. 第十二章 超越邏輯的程式
  89. 0.地下室
  90. 1. Quine的悖論
  91. 2.猜想
  92. 3.同儕評審
  93. 第十三章 JavaScript美麗又可愛
  94. 這些鬆散的美
  95. 達利的荒謬
  96. 達利的JavaScript
  97. 這是美是醜?
  98. 非常不幸
  99. 瘋狂中的美
  100. 看一下map
  101. 嗨,thisArg
  102. 噢,關於[].map的這些我都知道—然後呢?
  103. 呼叫所有單位
  104. 數字
  105. 現在我全部知道
  106. 狂野
  107. 第十四章 函數式JavaScript
  108. 函式性程式設計
  109. 函式性JavaScript
  110. 物件
  111. 現在呢?
  112. 第十五章 演進 (1/4)
  113. 第十五章 演進 (2/4)
  114. 第十五章 演進 (3/4)
  115. 第十五章 演進 (4/4)
  116. 索引 (1/2)
  117. 索引 (2/2)
  118. 關於作者群

Product information

  • Title: JAVASCRIPT之美|聽頂尖程式設計師闡述他們的思維
  • Author(s): Anton Kovalyov
  • Release date: December 2015
  • Publisher(s): GoTop Information, Inc.
  • ISBN: None

You might also like

book

时间序列分析实战:基于机器学习和统计学

by Aileen Nielsen

天气、股票、心跳都会产生时间序列数据,物联网、数字化医疗和智慧城市的兴起更是产生了大量的时间序列数据。随着数据的规模快速增长,应用机器学习和统计方法进行时间序列分析的做法越来越普遍,也越来越重要。 本书从实战角度介绍时间序列分析中的创新技术和实际用例,帮助你结合使用传统的统计方法和先进的机器学习技术来解决时间序列分析中的常见问题。由于Python和R都是时间序列分析常用的语言,因此本书兼顾这两种语言并对时间序列进行全面的阐释,可以让数据分析师、数据工程师和其他与数据打交道的读者快速上手。 发现并整理时间序列数据 针对时间序列进行探索性数据分析 模拟时间序列 存储时间序列 为时间序列生成并选择特征 测量误差 使用机器学习和深度学习分析时间序列 评估模型的精度和性能

book

量子计算机编程:从入门到实践

by Eric R. Johnston, Nicholas Harrigan, Mercedes Gimeno-Segovia

量子计算机将开启一场全新的计算革命,而你现在就可以参与并推动这场革命!运用本书中的知识,你将成为探索量子计算应用的先驱,在连物理学家可能都闻所未闻的领域应用和拓展量子计算技术。 正如学习编程不需要精通晶体管背后的物理学,学习量子计算机编程也不需要精通量子力学。本书以程序员为中心,避开了艰深的数学公式,用直观的圆形表示法阐释了量子计算程序的概念、原理和应用场景。同时,本书提供了在线实验室,你可以一边运行JavaScript代码,一边观察和思考对应的可视化效果。 QPU编程:探索量子计算机编程的核心概念,包括如何描绘和操作量子比特,以及如何实现量子隐形传态。 QPU原语:学习算法原语,包括振幅放大、量子傅里叶变换和量子相位估计。 QPU应用:研究如何将QPU原语用于构建应用程序,示例包括量子搜索、量子超采样、舒尔分解和量子机器学习。

book

高效能網站建置指南

by Steve Souders

Web開發者效能最佳化實務 「《高效能網站建置指南》包含最新研究成果,激發你的編程智慧,讓你的網站運作順暢,如行雲流水般。我愛死了這本書的風格 — 涵蓋豐富的主題,而且每個主題皆由該領域中備受尊崇的權威專家帶領你深入探討。說真的,我們的團隊人手一本。」 — Bill Scott,Netflix,UI工程部總監 效能是網站成功與否的重要關鍵,然而,挾帶著日益豐富的內容並且運用大量的Ajax技術,現今的Web應用程式已迫使瀏覽器達到其處理能力的極限。Steve Souders,Google的Web效能佈道者及Yahoo!的前首席效能專家,在本書中提供了最寶貴的技術,協助你最佳化你的網站效能。 Souders的上一本暢銷書《High Performance Web Sites》在Web開發的世界裡捲起了漫天風雲,並且揭露出一項事實:網頁加載的總耗時中有80%是花費在客戶端上的。在《高效能網站建置指南》這本書中,Souders與其他八位專家級的特約作者針對改善網站效能提供了最佳實務以及實用建言,主要包括下列三個關鍵領域: ● JavaScript — …

book

Java数据科学实战

by Michael R. Brzustowicz, PhD

数据科学近年来迅速成为了热门研究领域,但很少有数据科学从业人士冒险涉足Java世界。考虑到在工程与科学的交叉地带所需的可伸缩性、稳健性以及便利性,Java其实是一门理想的语言。本书将循序渐进地引导读者进入数据科学的工作流程,在解释数学原理的同时给出代码示例。书中解释了数据科学流程每一步背后的基本数学原理,以及如何采用Java来应用这些原理。 本书内容涉及数据输入与输出、线性代数、统计学、数据操作、学习与预测,以及Hadoop MapReduce在这个过程中所扮演的关键角色。 讨论获取数据、清理数据,以及以纯粹方式排列数据的众多方法 理解数据应采用的矩阵结构 学习测试数据来源及数据有效性的基本概念 把数据转换为稳定且可用的数值 理解监督型学习算法与无监督型学习算法,以及评估这些算法是否成功的方法 采用适合数据科学算法的定制组件,设置和运行MapReduce任务