书单~

Author Avatar
KING Feb 16, 2018 Feb 16, 2018 UPDATED

书单

已完成

HTML&CSS

  1. 《精通CSS:高级Web标准解决方案(2010.5 第2版)》
  2. 《CSS.Secrets / CSS揭秘 (2015.6)》 2018.2.13
    • 许多效果的实现和思想非常有意思,而且作者对CSS真的算得上顶尖大师,书中会提到一些CSS4的模块
  3. 《响应式Web设计:HTML5和CSS3实战(2013.2)》 2018.2.15
    • 由于出版较早且书很薄,很多CSS3和H5的细节没有涉及,很多特性仅仅是大体介绍了一下。其中关于H5语义化标签用法WAI-ARIA实现无障碍站点流式布局响应式布局的联系与区别可重点关注。
  4. 《CSS 权威指南(第三版)(2008-01)》 2018.3.21
    • 重新复习巩固了一些CSS的东西,仅仅靠W3C的入门知识或者一些博客林散进阶知识还是不够的,不够系统,也不够全面,个人认为本书是学CSS必须拜读的书,尤其是关于块级、行内块、表格、浮动、定位的方面的系统而全面的知识点,如何运行和背后的渲染流程非常值得研究。
    • 但遗憾的是本书仅仅只有CSS3之前的内容,CSS3还需要另外单独学习,而且作为一系列新技术集合的CSS3还在不断发展,学起来会更加漫长和辛苦。
  5. 《CSS 重构:样式表性能调优》
    • 总体上此书没什么新鲜的东西,算是梳理了一下CSS开发流程,对重构讲到一些原则
    • 对CSS性能可以说没怎么涉及到,同时里面附带JS的重构和Normalize.css的源码我就不太理解了。。。
    • 一言蔽之:不推荐购买
  6. 《CSS世界》 2018.6.1
    • 非常非常值得看,作者的某些“自制术语”在第一遍都的时候真的有点不太明白,但我相信,多看两遍就能理解并记住了。
    • 内容非常非常好,虽然不是全面的讲解CSS,但对CSS2.1的某些属性的研究和深入、以及思考的方式都是值得学习和探究的。
    • 在火车上把CSS世界剩下的全看了,毫无疑问是要看第二遍的~

JavaScript

  1. JS函数式编程
    • 今天看了berwin:谈谈我对函数式编程的思考 博客,才记起来此书我并没有完全看完,现在重新想想,其实函数式编程离开发并不远,就和闭包一样(360企业安全1面问到了:闭包在开发中用得多么?我回答的是,直接写闭包的不多,多数是放在底层实现了),其实每时每刻都在用,只是没有那么刻意的在业务中直接写一个闭包。
  2. 《学习JavaScript数据结构与算法 (2015.10)》
  3. 《JavaScript高级程序设计(第3版)(2012.3)》
  4. 《JavaScript权威指南(第六版) (2012.4)》
  5. 《Effective JavaScript 编写高质量JavaScript代码的68个有效方法 (2014.1)》
    • 看得快,忘得也快,这种“最佳实践”类的Tips书籍需要多回顾,多思考才行
  6. 《Javascript框架设计 (2014.4)》
    • 此书现在有第二版了,不看不知道,看了才能知道框架真是要花非常非常多的功夫,考虑到CSS/HTML/浏览器的方方面面
  7. 《JavaScript设计模式与开发实践 (2015.5)》
    • 将许多设计模式的思想理清是最重要的,解决什么问题,什么情况下使用,然后就是多思考自己在实现功能情况下怎么才能做到良好复用,扩展。
  8. 《Understanding ECMAScript6 (深入理解ES6) (2017.1)》
  9. 《ECMAScript 6 入门 (第3版) (2017.9)》
  10. 《你不知道的JavaScript(上)》 2018.3.13
    • 书中this、作用域闭包、prototype等都讲到很不错,换了一个角度去看问题
    • 后面关于JS的类的说法也很新颖,将JS中的“类继承”看作是一种模式,一个而且确实有一种被推翻固定思维的感觉
    • 最后关于“对象关联”也是非常有意思,感觉是将Object.create()真正的用活了起来
    • 个人认为翻译后的语言可能少了一些意味,有机会还是得看该书的英文版
  11. 《你不知道的JavaScript(中)》 2018.3.14
    • 中卷没有上卷好,不仅仅是内容的描述上,包括翻译上也没有上卷那么流畅
    • 其中,第一部分“类型和语法”写得不如
    • 第二部分“异步和性能”中关于promise和生成器的介绍不建议看,《深入理解ES6》中关于promise讲得更清晰易懂一些
    • 而生成器,我个人觉得《ECMAScript 6 入门》的更清楚,示例更贴切,当然它的promise部分也非常好
  12. 《 深入浅出 NodeJS (2013.12)》2018.3.18
    • 其实本书不是对Node的一些API或者实战做介绍的书,而是讲解Node后面的异步、内存、网络、Web应用的本质(即请求&响应),看完并不能让你写出一个完整的Node应用,但是能让你对Node了解更深入。
    • 其中很值得细读巩固的章节:
      第2章模块机制、第3章异步I/O、第5章内存控制、第6章Buffer、第9章
    • 其他章节如第4章异步编程(可以直接使用ES6异步规范)、第7章网络编程(若对基本的TCP、UDP、HTTPs、WebSocket有了解的话很快就能看懂)。
  13. 《Javascript DOM编程艺术第二版(2011.4)》 2018.5.14
    • 重新看了一遍,发现过了7年此书的一些思想还是依然有用,其中基本上没一个例子的源码都涉及到了可用性检测,比如用之前检测API是否可用。
    • 同时在第11章中讲到的Modernizr这个库的检测源码的实现方式在现在依然可用,比如对H5新的Form控件标签,通过检测其type属性即可知道浏览器是否支持(比如若不支持range类型,则退化为text类型),同样还有检测标签属性的方式也依旧有用。
    • 但是其中对DOM的操作确实是有一些老了,很多后面出的DOM新标准还是得看文档或者规范才行。

Vue

  1. 《Vue2实践揭秘 (2017.4)》 2018.2.26
    • 囫囵吞枣式的把vue2实战揭秘看了,确实可以说是我看过的最佳入门书籍(严格来说是要在看完官方教程后)。
    • 其中,第二、五章关于测试的东西看得不是很明白,但是第三、四章对一个项目从原型到Vue组件的过程介绍得很清晰很有条理。
    • 然后是第六章里面谈到了如何在Vue中导入jQuery、lodash等库也是应有用,虽然很多人并不推荐在Vue等MVVM框架内使用jQuery。
    • 最后是关于render函数的使用,个人感觉,虽然书中演示了很多而且例子也很简洁,但我还是没明白这个render到底应该在什么情况下使用,以及如何高效的使用,而不是借助JSX语法。

AngularJS & Angular

  1. 《Pro.AngularJS-AngularJS高级程序设计 (2015.8)》
  2. 《AngularJS开发下一代Web应用》
  3. 《AngularJS深度剖析与最佳实践 (2016.1)》
  4. 《AngularJS权威教程 (2014.8)》
  5. 《揭秘angular 2 (2016.12)》

Node

  1. 《Node与Express开发(2015.2)》 2018.2.14

其他 & 综合

  1. 《指尖上行 移动前端开发进阶之路 (2017.9)》
    • 书很棒,虽然很多H5的特性确实用不上,但先得有创意才能有优秀作品
  2. 《区块链将如何重新定义世界-唐文剑》
    • 若对区块链底层技术不感兴趣的可以看这个,算是最基本概念的简单入门,但并不代表看了这个表示你懂得区块链了。
    • 因为本书对底层技术谈的不多,主要是对区块链的应用和其特性的讲解,本书的精华部分在于案例,在各种领域的应用前景的讲解。
  3. 《图解区块链》
    • 配图很有趣,非常适合入门,
    • 对于一些进阶的信息,以太坊,区块链应用开发,应用架构聊得不多
  4. 《大型网站技术架构.核心原理与案例分析(2013.9)》2018.3.18
    • 第一章是入门,后面都是讲解概念了,重复的概念和解读,将架构在各种纬度和角度去考虑:
    • 本质上大型网站就是庞大业务和高并发的网站,在这种情况下需要符合很多非功能性需求,比如“可扩展”,“可伸缩”的,“高可用”等,
    • 解决业务庞大的关键在解耦、分层,解决高并发的关键在负载均衡,解决高可用和稳定性的关键在冗余。
    • 总而言之,哪里短就补哪里,齐同并进适合现状的同时能稍有冗余即可
  5. 《剑指Offer(2012.1)》2018.3.28
    • 看完了,并且用JS实现了大部分的题目的解答,
    • 整个练习过程中巩固了很多知识,如递归思想、对链表、二叉树、栈等数据结构、以及JS内置函数
    • 但是毫无疑问,除了一些关于C++语言基础的完全“还给”了老师之外,数学就是目前最大的问题,数学基础丢了太多

未完成/计划中

高优先级

  1. 《Learning.React.Native—React.Native开发指南(2016-06)》
  2. 《深入React技术栈(2016-11)》
  3. 《深入浅出React和Redux(2017-04)》
  4. 《Pro.CSS.for.High.Traffic.Websites-高流量网站CSS开发技术》
  5. 《 响应式 Web 设计:HTML5 与 CSS3 实战(第二版)(2017-02)》
    • 前4章主要是介绍一些响应式设计的基础,如媒体查询、HTML5语义化
  6. 《 JavaScript 语言精粹(修订版)(2012-09)》
  7. 《 Node.js 微服务 》
  8. 《前端架构设计(2017)》
    • 不得不说,翻译得真的不好,有一些话真是让人懵逼。
    • 此书最有用的其实是整理了组件化开发的一些优点,以及如何在CSS上体现组件化开发。比如:
      • 永远不要给布局的子内容强加内边距和元素样式。布局只关注垂直对齐、水平对齐和文字间距。
      • 主题和别的数据属性值永远不要强制改变外观;它们必须保持布局、组件和元素可以应用于其上。
      • 组件总是贴着它的父容器的四个边,元素都没有上外边距和左外边距,所有的最后节点(最右边和最下边的节点)的外边距都会被清除。
      • 组件本身永远不要添加背景、宽度、浮动、内边距和外边距的样式,组件样式是组件内元素的样式。
      • 每个元素都有且只有一个唯一的且作用域只在组件内的 CSS 类名。所有的样式都是直接应用到这个选择器上,并且只有上下文和主题能修改元素的样式。
      • 永远不要在元素上使用上外边距,第一个元素总是贴着它所在组件的顶部。
      • JavaScript 永远不要绑定任何元素的 CSS 类名,选中元素通过数据属性实现。

长期

  1. 《你不知道的JavaScript(下)》
  2. 《程序员的数学 (2012.11)》
  3. 《构建高性能Web站点 (2009)》
  4. 《黑客与画家》
  5. 《 JavaScript 异步编程 (2014-04)》
  6. 《 SPA 设计与架构:理解单页 Web 应用 (2016-11)》
  7. 《区块链:定义未来金融与经济新格局》
  8. 《Sass和Compass设计师指南》
  9. 《大型网站性能监测、分析与优化》
  10. 《Web 性能实践日志》

部分完成

  1. 《区块链:从数字货币到信用社会(2016.7)》 2018.3.5完成部分
    • 对某些术语概念解释得不是很清楚,不太适合初学者,适合对区块链概念有一定了解的读者
    • 比如 CoinDays 的意义和作用、区块链的发展体系(4个象限)
  2. 《网络是怎样连接的(2017.01)》
    • 看完了第一章和最后一章,书里内容算是非常经典(也就是说其实还是有点老了)
    • 但作为了解一个大体来看确实是好书,找时间得把中间的几章也看了
  3. 《图解HTTP (2014.4)》
    • “第6章HTTP首部”需要着重理解,其次就是“第9章基于HTTP的扩展协议”介绍了一些新的协议和技术
    • “第8章确认访问用户身份的认证、第11章Web 的攻击技术”未读。
  4. 《JavaScript 忍者秘籍 (2015.10)》2018.4.1完成部分
    • 2 自我实现一个非常简单的单元测试函数
    • 3.3 函数调用的四种形式的理解(其实应该只有三种:在对象上调用、构造函数调用、call/apply硬绑定调用),其中没有讲到这四种的优先级(你不知道的JS中讲到了)
    • 4.3 对如何实现记忆函数和如何将对象伪造成一个数组(对象上的length属性会被Array上的原型方法自动更新)将得很好
    • 5.5 函数包装中需要重点理解,如何函数重载,以及函数重载的意义(非if-else这样的)
    • 5.6 IIFE的深入理解(括号的作用,以及表达式与操作符的使用)
    • 6 OOP编程中的难点在于保存父级方法以及扩展对象
    • 7 正则表达式的主要问题在于捕获以及分组的云用,尤其是捕获的运用
    • 8.1 中关于线程的执行的图片示例很恰当、其次就是8.3如何利用定时器分步执行、8.4的中央调度对动画非常有用,能保证动画的按序发生
    • 13 事件需要特别关注,尤其是自定义事件、以及冒泡、委托的实现。
    • 9 ~ 12 没详细看,待二刷的时候再看
  5. 《Professional.Node.js-Node.js高级编程》
    • 看完前14章,大约占2/5左右,感觉太过简单,就是简单介绍Node的内建的一些模块,但其API也并未过多解释
    • 目前来看,讲解原理上还是《深入浅出Nodejs》比较好
  6. 《 Node.js 硬实战:115个核心技巧 (2017-01)》
    • 翻译的不是很好,而且示例代码有些老了
    • 可以过一遍前面的基础,后面所谓实践技巧个人感觉实用性并不高
    • 目前看完了前8章