推荐7本计算机书籍

1.企业应用架构模式

作者: [美] Martin Fowler

推荐理由

计算机编程本身不是科学,而是工程,它有自己的目标:如何把一系列程序设计成一个系统;如何将程序或系统设计成健壮的、经过测试的、文档化的和受支持的产品;如何保持对大量复杂性的控制。

我主要关注会话状态、并发控制和分布式对象。主产品必须是好的。解决问题的关键是认识问题,这本书帮助读者认识建筑设计模式中的各种问题,这是进一步解决问题的关键。

2.机器学习

作者: 周志华

推荐理由

结构合理,涵盖了机器学习的几个部分:人工神经网络、支持向量机、集成学习、聚类分析等。

从浅层到深层,从简单原型到复杂模型的推导过程;

有适量的数学推导过程,且本书附录后有简明的数学补充知识,便于自学;

3.Haskell趣学指南

作者: [斯洛文尼亚] Miran Lipovaca

推荐理由

《Haskell入门》是最受欢迎的书籍之一,也是亚马逊上评论最多的Haskell书籍之一。快速建立对Haskell整体理解的能力;有许多关于使用注意事项、设计原因、最佳实践和关键概念的善意提示;图文并举、按部就班、幽默风趣的讲解很有特色;看起来很安全,很好!

4.Head First 设计模式(中文版)

作者: [美] 弗里曼

推荐理由

这是一本非常值得推荐的书,不仅可以学习设计模式,还可以练习编程技能。简单易懂的例子,你可以学到很多知识。

面向对象是设计的原则,设计模式是具体的方法和工具。学习设计模式的最佳方法是阅读过去的项目和现有框架使用的设计模式。

对象之间依赖关系的代码级表示是通过一个对象充当另一个对象的局部变量来实现的,依赖关系的一个典型示例是观察者模式。复合关系的代码实现是一个实例变量。

5.深入理解Java虚拟机

作者周志明

推荐理由

知识点覆盖面广,原理讲解透彻,包含大量演示案例,是一部相当有深度的作品。美是重要性的顺序的概念不是组织,专有名词不加解释,甚至相同的概念使用不同的专有名词,也可能太多的干货的副作用,一般来说,JVM门槛并不低,作者做了深度浅,不是一般的能力。

真为Java技能医学推广。这本书让自己对虚拟机的操作机制和底层的知识真正有了近距离的接触,很多知识不再只是符号或单词的堆砌,而是一种真正的理解。强烈推荐这本书。

6.JavaScript模式

作者: Stoyan Stefanov

推荐理由

非常推崇一本书,是JS语言的最佳实践(可以结合那本“Javascript语言精华”,被认为是JS高级书)。

特别引人注目的是,许多模式是由作者(例如继承)逐步解释的,首先编写一个简单的实现,然后指出该方法的优点和缺点,然后使用另一种思想来改进它。在阅读的过程中,这种循序渐进的解释很容易让读者思考和加强理解,这是非常可贵的。

7.软件随想录

作者: [美] Joel Spolsky

推荐理由

这本书很好,因为它是一本普通的书,我们生活在一个不正常的世界。它能帮助人们的是,它能把那些失去正常思维的人带回到正常的范围。因此,它是一本经久耐用的书。

像Graham一样,Joel是一个用左手写诗,用右手编程的企业家。伟大的书,伟大的人。巧的是,这本书和格雷厄姆的《黑客与画家》都是由阮逸峰翻译的,质量是有保证的。