您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
在学习编程时,你觉得必须读的科学书籍有哪些?
程序员,本书,算法在学习编程时,你觉得必须读的科学书籍有哪些?
发布时间:2020-12-06加入收藏来源:互联网点击:
在学习编程时,你觉得必须读的科学书籍有哪些?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
自我介绍下,我是985院校CS专业的本硕毕业生,在BAT实习,毕业后直接转正。我从比较专业的角度来为大家推荐一些书籍。
C语言
首先,程序员未来可能会用Java,Python,Go,php,JavaScript等等,但是无论用哪种之前,都一定要会C语言,这是CS及相关专业大一新生必学的课程,可以说是学习编程的敲门砖,就如同小学生要学会拼音一样。事实上,C语言确实可以看做编程领域的拼音一样的存在。各大高校都会选择谭浩强的《C语言程序设计》,在此也将这本书推荐给大家,作为C语言的入门教材,可谓深入浅出而又旁征博引。
数据结构与算法
学会了C语言作为基础后,就可以进一步学习数据结构与算法了。
首先推荐入门级别的书籍,也是很多大学里的教材,由清华大学出版的《数据结构(C语言版)》。至此,想必你已经明白为什么要先学C语言了吧,有了编程语言做基础,才能继续描述数据结构和算法。很多基础的数据结构,比如list,queue,stack,node,tree等等,都是要靠编程语言定义的。
接下来,介绍一本进阶的数据结构和算法结合的书籍,是由美国人编写的《数据结构与算法分析》,这本书除了介绍数据结构,还从数学的角度分析很多算法的设计,如果能够读懂三分之二,可以说,谷歌微软的大门都对你常开了。
分语言的工具书
这一部分没有具体推荐,因为根据你计划专攻方向的不同,你需要购买不同的书籍,比如如果你要学java,那么就要看《Java编程思想》,如果要做前端了,就要看鼎鼎大名带犀牛的那本《JavaScript权威指南》,如果要做后端,就要看《Python学习手册》,《Spring MVC学习指南》等等。
程序员思维
跳出语言的束缚,接下来要培养程序员的思维,大家在工作过程中,难免要接手别人的代码或者考虑整体架构等等,因此,最好提前阅读《重构 改善既有代码的设计》,通过这本书来提高自己对他人已有代码的阅读能力,以及自己在编写代码之前对架构的掌控力。
以上是我推荐的对多有程序员都有帮助的书籍,不论你是做平台开发,还是软件开发,还是APP开发,都离不开上面几本书。如果你觉得有帮助,欢迎点赞或者留言,与我进一步探讨。
我是苏苏思量,来自BAT的Java开发工程师,每日分享科技类见闻,欢迎关注我,与我共同进步。
回答于 2019-09-11 08:43:50
本文从以下几个方面给大家分享几本高价值书单,并不一定全面,欢迎读者补充,希望能对你有帮助。
1 关于编码与重构
1.1 代码整洁之道
英文名《Clean code》,该书出自 Robert C Martin 之手,又被称为 Bob 大叔,是一位美国著名的软件工程师和作家,他已经写了有关敏捷软件开发的书籍。书中提到众多有名的编程原则:比如 SOLID 原则、 Law of Demeter(LoD,又被称为最少知识原则)。
推荐理由:
每个程序员都必须拥有本书并阅读它。这是一本非常著名的书,它将完全改变您的编程风格,书中介绍的规则均来自作者多年的实践经验,涵盖从命名、数据结构、面向对象的设计原理到重构的多个编程方面,虽为一“家”之言,然诚有可资借鉴的价值。或许,真正整洁的代码真能让同行读起来像诗一样。
任何傻瓜都可以编写计算机可以理解的代码。优秀的程序员编写人类可以理解的代码。— 马丁·福勒
如果只能读一本书,我就推荐这本。最后,基于本书,众多开发者还推出了各种语言的整洁之道:
• Javascript 整洁之道
• PHP 整洁之道
• ABAP 整洁之道
• Java 整洁之道
• .NET 整洁之道
还有各大科技公司的代码风格指南:
• Google 风格指南
• Uber Go 语言风格指南
Bob 大叔的《架构整洁之道》也值得推荐,这本书是在架构领域的登峰之作,围绕“架构整洁”这一重要导向,系统地剖析其缘起、内涵及应用场景,涵盖软件研发完整过程及所有核心架构模式。
还有《程序员的职业素养》,作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来人引路,助其职业生涯迈上更高台阶。
1.2 重构(第2版)
英文名: 《Refactoring: Improving the Design of Existing Code,2nd Edition》,作者 Joshua Kerievsky。本书是理论和实践最佳组合的罕见书籍之一。重构是一个使您的工作代码更加美丽的过程,这本书可以利用已经尝试和测试的软件开发世界的模式来为您提供帮助。
推荐理由:
重构一词经常在各种大会上被提及,那就是这本书带来的影响。重构也就是重写软件的过程,而无需更改其功能,以提高其可读性,可检验性或可维护性。重构是使工作代码美观的过程,重构有助于改进工作代码的设计。这也是优秀程序员的必备技巧之一,通常优秀的程序员也擅长重构。
本书将教你重构代码的艺术和科学。无论您是 Java 程序员、C++ 开发人员还是 Python 开发人员,每个程序员都可以从本书中受益。
与《重构》经常被提及的书就是大名鼎鼎的《代码大全》,书中解释的也是久经考验的技术和策略,能有效帮助程序员和软件开发人员。笔者也曾在大学的时候把这本书图书馆借出来,发现这本书太厚,啃不动,到期就立马归还了。
1.3 代码之美
英文名:《Beautiful Code: Leading Programmers Explain How They Think》,作者:Grey Wilson。
推荐理由:
大牛前辈的博客合集,同时也是提高编码技能的好书之一,因为它为您提供了一个机会,让您了解专业程序员如何处理问题、编写的代码以及他们如何解决问题,并且仍然能够保持他们的代码美观。
这本书是一系列案例研究的集合,揭示了 Emacs 到 Facebook 等大型网站架构秘密,讲述了那些专家程序员,包括布莱恩·克尼原,乔恩·本特利(Jon Bentley)(编程珠玑的作者),蒂姆·布雷(Tim Bray),卡尔·福格尔(Karl Fogel),迈克尔·菲瑟斯(Michael Feathers)(有效地使用旧版代码的作者),以及许多更多伟大的作者和程序员。关于二分查找,在书中数次被不同作者提及,了解不同作者的观点。无论您使用哪种编码语言,例如 Java,C#,Python 或 Ruby,都会在本书中找到有趣的东西。
上一篇:你们感兴趣的夜宵都有哪些?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |