入学时,计算机教授“含泪”送我这5本经典书

-回复 -浏览
楼主 2018-09-11 02:10:21
举报 只看此人 收藏本贴 楼主

一个程序员喜爱的聚集地


周五好,我是最爱你们的小编绝惹妹

小编是一名软件工程本科生,今年已经大四…

落华无意,花开花谢已是四载春秋…

寒窗有情,笔起笔落方知岁月已逝…

 

(初,开学典礼上)

老院长是项目经历很足,管理经验丰富的老教授…

当时开学致辞,聊了作为软件工程本科该用…

什么样的“方法论“去度过本科学习

内容太多了…

 

但我记得他说过很深刻的3点


1.    要成为张小龙一样的业界领袖,产品和技术做到极致。

2.    研究生可以考虑冲清华,会比高考容易。

3.    好的程序员要培养3点素养:数学修养+英语能力+编程能力

 

前两点说实话,小编也没有落实完成…

第3点我非常认同,并且贯彻在本科学习当中

 

以下,围绕这3点素养,推荐几本书

里面很多是Stanford等名校的cs教材...

这些书我都读过,但会保留下来方便以后查阅

当然,你需要做的…

按照自己需求选自己需要的书

认真读到文末,我会把这些书送给你


良好的数学修养


有的朋友会感觉,我写代码跟数学一点关系都没有

这是因为目前只需应付普通的编码问题…

但后续职业发展,数学会让你走得更远

当今最火爆的人工智能

需要用到大量的线性代概率论,甚至高等数学..

光SVM的数学理论就可以写成一本小文档…

 

数字图像处理、计算机视觉

需要编码、信息论、代数知识…

一个傅里叶变换估计就难住不少人..

 

而如果从事信息安全或者黑客、区块链

数学(具体在密码学),你的头脑得活…

 

综上,推荐两本数学方面的书


1.《线性代数及其应用》


这是一本外国人写的教材,读完之后你会发现外国人写的书与国人写书很不同,它不会像国人写书那样“直白爽快“


它会把线性系统以及数学运算、向量空间等等概念独立成章,讲得通俗严谨,有很具体的示例以及习题。


甚至有人评价说要比Gilbert Strang的线性代数书还要深入浅出,当然这见仁见智。这是一本很好的入门书,但线性代数还有进阶的课程的,可以参考下斯坦福、MIT的课程,里面会有不同的解题方法。


2.《概率统计》



该书分为两部分:1.概率部分2.统计部分

该书也像上面那本线性代数一样,很有外国人风格,非常喜欢用示例说明问题。该书已经非常详细了,甚至光是解释“概率是什么“这样一个问题也会很用心,写了一定篇幅告诉你3种定义。


这本经典的概率论与数理统计教材,多年来畅销不衰,被很多名校采用,包括卡内基梅隆大学、哈佛大学、麻省理工学院、华盛顿大学、芝加哥大学、康乃尔大学、杜克大学、加州大学洛杉矶分校等。


但是这本书有一个让国人读起来不适应的地方——不能跳读,因为里面解释性的示例,会与前文某个地方的示例有一定相关性。


流畅的英语阅读能力


一个程序员需要跟大量的文档打交道

比如需求说明文档、使用说明文档

涉及一个新的框架,新的语言特性,你需要查看一定量的英文文档…


对于英语能力,并非是要求你能秀

而是对于像Python新语言特征发布…

你能够查阅无障碍

况且很多经典的计算机书,都是由外国大牛著书的…

如果看翻译版,很有可能是:

1.    计算机翻译器翻译的

2.    高校老师让学生翻译的

 

你可能会遇到不专业的翻译

而且有些计算机专有名词是无中文译版的!

这方面由于不是要求专业到像一个翻译…

但阅读一下Google Style Guide

https://github.com/google/styleguide


你起码得是无压力的!

该文档里面会有关于良好的编程规范的不少好建议

可以作为进阶读物


优秀的编程能力


切记语言不是最重要的,因为今天火这个语言

可能明天火其他语言


你需要有几门的编程语言积累

以及对计算机组成、数据库、计算机网络等知识了然于心…

(这些知识是面试必问

 

1.《Computer Organization and Design》



这本书能够让你对冯诺依曼架构、计算机指令集、流水线CPU如何设计有一个很好的了解。


了解这些有什么用?


当涉及底层开发甚至是操作系统开发,你需要做的就是如何让你写的系统跟硬件架构形成良好的配合,如何能够提升系统性能和吞吐率


2.《数据库管理系统》



数据库是程序员必学的知识,云计算、大数据、分布式架构,涉及的内容跟数据库关联性很大


当你需要提供一个面对海量分布式存储的数据依然有效的存储查询方案,即便是做一个在线App,也需要有一个高效率的数据库方案


3.《计算机网络自顶向下方法》


这本书由Keith W. Ross写成的书非常有趣,很少有教材能像这本书一样,有平白贴近生活的样例,与严谨的解释形成良好的配合


这本书的章节设置非常明晰,就是按照计算机网络5层结构模型,自顶向下讲一遍,会让你对“分层“、”自顶向下“的设计模式有更深的体会。

 

最后


当然,上述的5本书都是经典之作,堪称程序员必看,还有很多有用的书籍,地位虽然没上述几本书(比如里面会有一本人工智能入门书)重要,但也是值得一看的。


我把它们打包一起,作为福利送给读者们吧。



想要获取这些精品书,需要你完成以下步骤:

1.    关注该公众号,把该推文分享到票圈

2.    截图发至公众号

3.    公众号给我发一句【经典】,我会私聊你下载链接以及解压密码



我要推荐
转发到