35

2020年软件开发必看10本好书推荐 - ABC实验室

 4 years ago
source link: https://www.abcxlab.com/topic/it/202004060147144915.html?
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
booklist-1024x664.jpeg

2020年程序猿必读10本好书推荐

版权声明:本文为 ABC实验室 原创文章,版权所有, 侵权必究!

惊喜派送: 微信扫码关注“ABC实验室”公众号(二维码见文末),可以免费领取本文推荐书籍电子版。

2020年注定是一个不平凡的一年,当下新冠病毒肆虐全球、股市熔断、经济停顿,各行各业都遭受着沉重的打击。作为IT业也难幸免,同样受到很大的冲击,公司预算吃紧或者降薪裁员的消息也不绝于耳。但我想乐观点说:“危机危机,危机的本质是机遇”。疫情也促使很多行业线上业务用户激增、爆发增长,例如:在线教育、在线会议、在线医疗、短视频、游戏、生鲜电商等业务。这些线上发展的云经济、智能经济背后都是依托最新的云计算、大数据、物联网和AI等IT技术的逐渐成熟,同时又给这些新技术进一步发展提供了更多的场景和巨大机遇。所以说,机遇从来都没有离开过,但只会给有准备的人。

这是一个最坏的时代,也是一个最好的时代。

而你的问题可能是想的太多,看书太少! ^_^

有鉴于此,我想借此机会从我个人看的100本技术书籍中,挑选出10本好书和大家一起分享,只有我们自己成长了、强大了,别人看来的危机反而成为我们的机遇。

1.《数据密集型应用系统设计:Designing Data-Intensive Applications》| 作者:Martin Kleppmann

book1-238x300.jpg

豆瓣评分: 9.6

推荐理由:

英国剑桥大学分布式系统研究员力作,Confluent CEO、微软CTO 联袂力荐,EMC资深架构师亲译。带你跨越从分布式理论到工程实践的鸿沟!大数据工程师、软件开发者必备图书!每章都有一张思维导图!

狭义来说,IT的核心主要是信息计算、数据存储和网络互联。如果计算是引擎,高性能计算和人工智能是皇冠的话,在海量密集数据处理就是数据存储的最高形式,也是IT的基石。这本书应该是技术开发者必读书目,极力推荐。豆瓣 9.6的高分,已经说明一切!也许你很精通MySQL、Oracle等关系数据库,也用过Cassendra、Redis、Hadoop、Kafka、Flink等NOSQL/Streaming 中间件,你想把他们有机统一起来,从更高的视野去审视他们,那就有必要花上一周时间来翻翻这本书。

2.《Python 深度学习》| 作者:[美] 弗朗索瓦•肖莱

book2-239x300.jpg

豆瓣评分: 9.5

本书由Keras之父、现任Google人工智能研究员的弗朗索瓦•肖莱(François Chollet)执笔,详尽介绍了用Python和Keras进行深度学习的探索实践,涉及计算机视觉、自然语言处理、生成式模型等应用。书中包含30多个代码示例,步骤讲解详细透彻。由于本书立足于人工智能的可达性和大众化,读者无须具备机器学习相关背景知识即可展开阅读。在学习完本书后,读者将具备搭建自己的深度学习环境、建立图像识别模型、生成图像和文字等能力。

推荐理由:

随着人工智能逐步走向IT的各个领域并进行系统性的智能化升级,人工智能技术必然成为IT成业人员的必备知识和基本常识,所以作为人工智能重要突破和关键核心,逐步了解和掌握深度学习,也是开发者必备的一个技能。这本《Python深度学习》算是入门最好的书籍,它深入浅出、简单易懂,而且实践性很强,推荐给大家。

3.《Kubernetes in Action中文版》| 作者:[美] Marko Luksa

book3-232x300.jpg

豆瓣评分: 9.3

简介:《Kubernetes in Action中文版》主要讲解如何在 Kubernetes 中部署分布式容器应用。《Kubernetes in Action中文版》开始部分概要介绍了 Docker 和Kubernetes 的由来和发展,然后通过在 Kubernetes 中部署一个应用程序,一点点增加功能,逐步加深我们对于Kubernetes架构的理解和操作的实践。在本书的后面部分,也可以学习一些高阶的主题,比如监控、调试及伸缩。

推荐理由:

 如果说容器化是大规模云计算最敏捷高效的组织形式和趋势的话,Kubernetes基本上就是这个新趋势下云平台基础设施管理和调度的工业事实标准。因此在IT基础设施全面云化的当下,万物互联、事事上云,了解和掌握Kubernetes这个容器的调度和管理平台,就很有必要。

4.《老子》| 作者:老子

book4.jpg

豆瓣评分: 9.3

简介:《老子》五千言,共八十一章,多为韵文,分道经和德经两部分,所以又称《道德经》。与《庄子》如双峰并峙,是先秦道家学派的代表性著作。重在详尽论述作为宇宙本体、万物之源和运动规律的天道,并以之关照人道,指导治国和修身,涉及宇宙、自然、社会、人生的各个方面,用朴素的辩证思维构建起独特的理论体系。

推荐理由:

《老子》这本书在中国可谓是家喻户晓,它的销量全球第二,仅次于《圣经》。就是这么一本道家的哲学书和我们开发人员有什么关系呢,是不是我搞错了? No, No, No!  我觉得《老子》对我们软件开发,在抽象简化能力、柔性和大局观有着很强的指导意义。《老子》讲“道”、讲“大道至简”、讲“道生一,一生二,二生三,三生万物”,这里面有很强的抽象思维能力,从纷繁复杂的万事万物中高度概括出“道”来,对浩瀚宇宙进行了极大的简化。这个何尝不是我们做软件系统设计的根本目标? 《老子》又讲“上善若水,水善利万物而不争”、讲“弱固胜强”、讲“不尚贤”、讲“知人者智、自知者名”、讲“大音希声,大象无形”等辩证思维,对我们开发者有很强的警示意义。不要为了什么技术“牛人”的虚名,而忘记团队协作和合作共赢。《老子》的智慧,还体现在很强的大局观和朴素的求是精神,《老子》讲“祸福相依”、讲“道法自然”、讲“千里之行,始于足下”等等,这些对我们开展工作亦有很大帮助。 另外,《老子》这本才五千言的全译本,文字简单但道理深刻,在诸子百家的文献中,学习起来是最为简单的了。

5.《微服务架构设计模式:Microservices Patterns:With Examples in Java 》| 作者:[美] Chris Richardson

book5.jpg

豆瓣评分: 9.0

内容简介:

成功地开发基于微服务架构的应用软件,需要掌握一系列全新的架构思想和实践。在这本独特的书籍中,微服务架构的先驱、Java 开发者社区的意见领袖 Chris Richardson 收集、分类并解释了 44 个架构设计模式,这些模式用来解决诸如服务拆分、事务管理、查询和跨服务通信等难题。

本书将教会你如何开发和部署生产级别的微服务架构应用。这套宝贵的架构设计模式建立在数十年的分布式系统经验之上,Chris 还为开发服务添加了新的模式,并将它们组合成可在真实条件下可靠地扩展和执行的系统。本书不仅仅是一个模式目录,还提供了经验驱动的建议,以帮助你设计、实现、测试和部署基于微服务的应用程序。

推荐理由:

世界十大软件架构师之一、微服务架构先驱ChrisRichardson亲笔撰写,微服务实用落地指南。

如果说你曾经奉GoF的《模式设计》为学习设计模式的圭臬的话,那在微服务架构大行其道的今天,就很有必要更新升级下我们曾经掌握的设计模式,这本书2020年刚出,对微服务架构所用设计模式总结到位,值得推荐。

6.《黑客与画家:Hackers and Painters Big Ldeas From the Computer Age》| 作者:保罗·格雷厄姆

book6-214x300.jpg

豆瓣评分: 8.7

《黑客与画家:硅谷创业之父Paul Graham文集》是硅谷创业之父paul graham 的文集,主要介绍黑客即程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。书中的内容不但有助于了解计算机编程的本质、互联网行业的规则,还会帮助读者了解我们这个时代,迫使读者独立思考。

《黑客与画家:硅谷创业之父Paul Graham文集》适合所有程序员和互联网创业者,也适合一切对计算机行业感兴趣的读者。

推荐理由:

这本是十多年前的老书了(看过的读者可以忽略),为什么今天还推荐给大家,主要是我觉得这本是所有开发者必读书籍,从他在豆瓣近两万的评论中8.7的高分来看,其影响范围之广、之深,可见一斑。我记得前阵子从百度离职的陆奇就去了作者创办的YC了吧? 难道你就不想看看号称“硅谷创业之父”的心得? 也许你的人生因此少走很多弯路,也不一定! ^_^

7.《利用Python进行数据分析》| 作者:Wes McKinney

book7-228x300.jpg

豆瓣评分: 8.6

本书由Python pandas项目创始人Wes McKinney亲笔撰写,详细介绍利用Python进行操作、处理、清洗和规整数据等方面的具体细节和基本要点。第2版针对Python 3.6进行全面修订和更新,涵盖新版的pandas、NumPy、IPython和Jupyter,并增加大量实际案例,可以帮助你高效解决一系列数据分析问题。

推荐理由:

Python在数据分析和处理有其独特的生态优势,作者又是Python著名项目pandas的创始人,如果你对这块感兴趣,这本书很全面,值得看看!

8.《简约至上:交互式设计四策略》| 作者:[英] Giles Colborne

book8-229x300.jpg

豆瓣评分: 8.8

本书介绍交互式设计的技术与技巧,讲述如何从目标用户的需求和期望出发,结合人类本身的心理特征和行为特点,用简单的方法创建易用、有效且让用户愉悦的设计。书中阐释了合理删除、分层组织、适时隐藏和巧妙转移这4个令交互设计成果最大程度简单易用的策略。第2版根据近年来交互设计领域的实践和发展,对书中案例进行了全面更新。

推荐理由:

这是一本介绍交互设计的书籍,一般UI/UE设计师和产品经理必读书籍,是不是和我们开发者没有多大关系呢? 其实不然,我一直觉得,只是一味闷头做开发,不关心产品和用户体验,你做的架构设计也好、系统设计也罢,都是低效的。你可能走了很多弯路,却没有命中目标。因此作为一个开发者,其实要懂得产品思维和用户思维,做起事情来才更如鱼得水、事半功倍!  而这本书,虽然薄薄的一本,但道理却很深刻和实用,花不了多久时间,就能快速提高你的产品思维和用户素养,何乐不为?

9.《基于Apache Flink的流处理》| 作者:[美]  Fabian,Hueske,Vasiliki,Kalavri

book9-227x300.jpg

豆瓣评分: 8.3

简介: 带你走近Apache Flink,一个为全世界多个最大规模级别的流处理应用提供支持的开源框架。通过本书,你将探索并行流处理的基本概念并了解该技术与传统批处理的区别。

推荐理由:

不得不说,这是一本2020年刚出的新书,为大家跟进最新的大数据和流处理平台提供帮助。

Hadoop最近几年,受到质疑的比较多,其复杂性和高成本导致MongoDB、ElasticSearch等其他大数据开源方案占领了不小市场。虽然Hadoop可能从大数据的神坛跌落,但我想Hadoop在HDFS存储和生态多样性来看有其自身优势。而作为在Java生态里面第三代流处理平台的Flink,我对它抱有很大的期待。

10.《极客与团队:软件工程师的团队生存秘笈》| 作者:(美)菲茨帕特里克,(美)萨斯曼

book10-205x300.jpg

豆瓣评分: 8.3

《极客与团队》是一本写给程序员看的,教你怎么交朋友,怎么影响团队中的其他人。书中充满了操作性极强的建议和意见,让你在技术团队中过得更开心,变得更有效率,更加如鱼得水。《极客与团队》旨在帮助程序员改进理解他人,与人沟通,以及与人合作的能力,进而在编写软件的过程中变得更有效率。

《极客与团队》适合那些想要更上一层楼并编写出色软件的程序员阅读,也适合软件项目和团队的管理者自己或组织团队成员阅读和参考。

推荐理由:

两位来自Google的作者创作了《极客与团队》,他们具有丰富的项目开发和管理经验,还曾经是Subversion的初创成员。他们针对极客文化和团队文化主题的演讲直击痛点,颇受欢迎。

Google研发主管、Google首席互联网专家、Samba的开发者、Django创始人、Python之父等众多业内高端人士和程序员力荐。

项目研发和团队管理,一直是经久不衰的古老话题。从西方管理学到东方哲学,从《人月神话》到《人件》,关于如何管人、管事的书籍也有很多,但像《极客与团队》这样从工程师角度直指人心的,还不多见。什么“天才的传说”、为什么要“谦虚、尊重、信任”,这些在我们快速发展的IT业和中国浮躁的当下,又是何等的宝贵和难得!

图灵新书: https://www.ituring.com.cn/tag/36538

Oreilly新书: http://www.oreilly.com.cn/index.php?func=newreleases

官方公众号

留言 点赞 关注

欢迎关注“ABC实验室”微信公众号,我们一起分享人工智能物联网、大数据和云边计算等前沿IT技术干货。

qrcode_abcxlab-300x300.jpg
微信扫一扫
关注该公众号

—— ABC实验室,让技术更简单

Article Rating

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK