龙空技术网

这个618,让程序员倾心的14本好书有哪些?

程序员荐书 2162

前言:

现时兄弟们对“python中花括号的作用”大致比较讲究,小伙伴们都想要学习一些“python中花括号的作用”的相关文章。那么小编同时在网摘上网罗了一些有关“python中花括号的作用””的相关资讯,希望大家能喜欢,同学们快快来学习一下吧!

618期间,有哪些技术书技术书畅销在榜单上?小编整理了一下近一周的好书排行,希望能帮忙你做选择。满减活动还在继续,自营图书每满100减50,满减叠券可享400减260!如果想出手,今天还来得及。

1 深度学习 [deep learning]

本书对各类读者都有一定的用处,但主要是为两类受众而写的。其中,一类受众是学习机器学习的大学生(本科或研究生),包括那些已经开始职业生涯的深度学习和人工智能研究者。另一类受众是没有机器学习或统计背景,但希望能快速地掌握这方面知识,并在他们的产品或平台中使用深度学习的软件工程师。现已证明,深度学习在许多软件领域都是有用的,包括计算机视觉、语音和音频处理、自然语言处理、机器人技术、生物信息学和化学、电子游戏、搜索引擎、网络广告和金融。

为了更好地服务各类读者,我们将本书组织为3个部分。第1部分介绍基本的数学工具和机器学习的概念。第2部分介绍最成熟的深度学习算法,这些技术基本上已经得到解决。第3部分讨论某些具有展望性的想法,它们被广泛地认为是深度学习未来的研究重点。

读者可以随意跳过不感兴趣或与自己背景不相关的部分。熟悉线性代数、概率和基本机器学习概念的读者可以跳过第1部分。若读者只是想实现一个能工作的系统,则不需要阅读超出第2部分的内容。为了帮助读者选择章节,图1.6给出了本书高层组织结构的流程图。

图1.6 本书的高层组织结构的流程图。从一章到另一章的箭头表示前一章是理解后一章的必备内容

我们假设所有读者都具备计算机科学背景。也假设读者熟悉编程,并且对计算的性能问题、复杂性理论、入门级微积分和一些图论术语有基本的了解。

《深度学习》英文版配套网站是。网站上提供了各种补充材料,包括练习、讲义幻灯片、错误更正以及其他应该对读者和讲师有用的资源。

2 C++ Primer Plus(第6版 中文版) [C++ Primer Plus]

C++是在C语言基础上开发的一种集面向对象编程、通用编程和传统的过程化编程于一体的编程语言,是C语言的超集。

《C++ Primer Plus(第6版)(中文版)》是根据2003年的ISO/ANSI C++标准编写的。通过大量短小精悍的程序详细而全面地阐述了C++的基本概念和技术。全书分为18章和10个附录,分别介绍了C++程序的运行方式、基本数据类型、复合数据类型、循环和关系表达式、分支语句和逻辑操作符、函数重载和函数模板、内存模型和名称空间、类的设计和使用、多态、虚函数、动态内存分配、继承、代码重用、友元、异常处理技术、string类和标准模板库、输入/输出等内容。本书针对C++初学者,从C语言基础知识开始介绍,然后在此基础上详细阐述C++新增的特性,因此不要求读者有较多C语言方面的背景知识。本书可以作为高等院校C++课程的教材,也可以供初学者自学C++时使用。

3 C Primer Plus 第6版 中文版

豆瓣评分:9.4

全书共17章。第1章、第2章介绍了C语言编程的预备知识。第3章~第15章详细讲解了C语言的相关知识,包括数据类型、格式化输入/输出、运算符、表达式、语句、循环、字符输入和输出、函数、数组和指针、字符和字符串函数、内存管理、文件输入和输出、结构、位操作等。第16章、第17章介绍C预处理器、C库和高级数据表示。本书以丰富多样的程序为例,讲解C语言的知识要点和注意事项。每章末尾设计了大量复习题和编程练习,帮助读者巩固所学知识和提高实际编程能力。附录给出了各章复习题的参考答案和丰富的参考资料。

本书可作为C语言的教材,适用于需要系统学习C语言的初学者,也适用于想要巩固C语言知识或希望进一步提高编程技术的程序员。

4 Python编程快速上手 让繁琐工作自动化

真正的程序员,用编程来解决自己和别人的问题。俄罗斯有一个程序员编写了一个程序,会给老婆发加班短信,会在宿醉不醒时给自己请假,会自动根据邮件恢复客户的数据库,还可以一键远程煮咖啡。加拿大一名零编程基础的农场主,在学习了一门编程课后,开发了一个程序,自动控制拖拉机,配合联合收割机收割谷物。

若是已经掌握了其他编程语言,想学习Python,本书也是不错的参考。每一种编程语言,都会提供一种独特的视角,让你对编程有新的认识。我非常喜欢Python没有花括号和分号,程序很“清爽”,符合奥卡姆剃刀原理:如无必要,勿增实体。本书并没有深入介绍面向对象和函数式编程范式,如果想了解Python这方面的内容,请参考其他书籍。

5 Spring实战 第5版

Spring 5的主要功能是对反应式编程的支持,包括Spring WebFlux。这是一个全新的反应式Web框架,借鉴了Spring MVC的编程模型,允许开发人员创建伸缩性更好且耗用更少线程的Web应用程序。至于Spring应用的后端,最新版本的Spring Data支持创建反应式、非阻塞的数据repository。所有这些都构建在Reactor项目之上,Reactor是一个用于处理反应式类型的Java库。

除了Spring 5新的反应式编程特性之外,Spring Boot 2提供了比以前更多的自动配置支持,以及一个完全重新设计的Actuator,用于探查和操作正在运行的应用。

更重要的是,当开发人员希望将单体应用拆分为分散的微服务时,Spring Cloud提供了一些工具,使配置和发现微服务变得容易,并增强了微服务的功能,使它们更能抵御失败。

6 动手学深度学习

本书将全面介绍深度学习从模型构造到模型训练的方方面面,以及它们在计算机视觉和自然语言处理中的应用。我们不仅将阐述算法原理,还将基于Apache MXNet对算法进行实现,并实际运行它们。本书的每一节都是一个Jupyter记事本。它将文字、公式、图像、代码和运行结果结合在了一起。读者不但能直接阅读它们,而且可以运行它们以获得交互式的学习体验。

本书的一大特点是每一节的代码都是可以运行的。读者可以改动代码后重新运行,并通过运行结果进一步理解改动所带来的影响。我们认为,这种交互式的学习体验对于学习深度学习非常重要。因为深度学习目前并没有很好的理论解释框架,很多论断只可意会。文字解释在这时候可能比较苍白无力,而且不足以覆盖所有细节。读者需要不断改动代码、观察运行结果并总结经验,从而逐步领悟和掌握深度学习。

7 代码整洁之道

本书大致可分为3个部分。前几章介绍编写整洁代码的原则、模式和实践。这部分有相当多的示例代码,读起来颇具挑战性。读完这几章,就为阅读第2部分做好了准备。如果你就此止步,只能祝你好运啦!

第2部分最需要花工夫。这部分包括几个复杂性不断增加的案例研究。每个案例都清理一些代码——把有问题的代码转化为问题少一些的代码。这部分极为详细。你的思维要在讲解和代码段之间跳来跳去。你得分析和理解那些代码,琢磨每次修改的来龙去脉。

你付出的劳动将在第3部分得到回报。这部分只有一章,列出从上述案例研究中得到的启示和灵感。在遍览和清理案例中的代码时,我们把每个操作理由记录为一种启示或灵感。我们尝试去理解自己对阅读和修改代码的反应,尽力了解为什么会有这样的感受、为什么会如此行事。结果得到了一套描述在编写、阅读、清理代码时思维方式的知识库。

如果你在阅读第2部分的案例研究时没有好好用功,那么这套知识库对你来说可能所值无几。在这些案例研究中,每次修改都仔细注明了相关启示的标号。这些标号用方括号标出,如:[H22]。由此你可以看到这些启示在何种环境下被应用和编写。启示本身不值钱,启示与案例研究中清理代码的具体决策之间的关系才有价值。

如果你跳过案例研究部分,只阅读了第1部分和第3部分,那就不过是又看了一本关于写出好软件的“感觉不错”的书。但如果你肯花时间琢磨那些案例,亦步亦趋——站在作者的角度,迫使自己以作者的思维路径考虑问题,就能更深刻地理解这些原则、模式、实践和启示。这样的话,就像一个熟练地掌握了骑车的技术后,自行车就如同其身体的延伸部分那样;对你来说,本书所介绍的整洁代码的原则、模式、实践和启示就成为了本身具有的技艺,而不再是“感觉不错”的知识。

8 笨办法学Python 3

这本书的目的是让你起步编程。虽然书名说是用“Hard Way”(笨办法)学习写程序,但其实并非如此。所谓的“笨办法”指的是本书的教学方式,也就是所谓的“指令式”教学。在这个过程中,我会让你完成一系列习题,而你则通过反复练习来学到技能,这些习题也是专为反复练习而设计的。对于一无所知的初学者来说,在能理解更复杂的话题之前,这种教授方式效果是很好的。你可以在各种场合看到这种教授方式,从武术到音乐不一而足,甚至在学习基本的算术和阅读技能时也会看到这种教学方式。

本书通过练习和记忆的方式,指导你逐渐掌握使用Python编程的技能,然后由浅入深,让你将这些技能应用到各种问题上。读完本书之后,你将有能力接触学习复杂的编程主题所需的工具。我喜欢告诉别人:我的这本书能给你一个“编程黑带”。意思就是说,你已经打好了基础,可以真正开始学习编程了。

如果你肯努力,并投入一些时间,掌握了这些技能,你将学会如何编写代码。

9 人工智能(第2版)

本书可以称得上是经典教材,内容翔实,逻辑清晰,引经据典,纵横捭阖,是一本不可多得的人工智能教科书。人工智能包罗万象,包括自然语言处理、知识表示、智能搜索、规划、机器学习、人工神经网络复杂系统、数据挖掘、遗传算法、模糊控制等。面对人工智能的迅猛发展和海量知识,计算机科学和工程相关专业的读者,与其临渊羡鱼,不如退而结网,扎扎实实打好基础。“纸上得来终觉浅,绝知此事要躬行”。学习人工智能,读者要戒骄戒躁,认真理解算法,并将算法转换成计算机程序,因此,我建议读者读完一章之后,亲自编写代码,在机器上实际运行一下程序。“冰冻三尺,非一日之寒”,要成为人工智能领域的佼佼者,读者需要做好打持久战、打硬仗的思想准备,持之以恒地不断学习新技术,不断推陈出新。唯有这样,才能水滴石穿,成为社会的中流砥柱,引领时代潮流。

10 编程珠玑 第2版

本书描述了计算机编程更具魅力的一面:在可靠的工程之外,在洞察力和创造力范围内结晶而出的编程珠玑。正如自然界中的珍珠来自于磨砺牡蛎的细沙一样,这些编程珠玑来自于磨砺程序员的实际问题。书中的程序都很有趣,传授了重要的编程技巧和基本的设计原理。

阅读本书所需的唯一背景知识就是某种高级语言的编程经验。书中偶尔会出现一些高级技术(如C++中的模板等),对此不熟悉的读者可以跳过这些内容,基本上不影响阅读。

本书每一章都独立成篇,各章之间却又有着逻辑分组。第1章至第5章构成本书的第一部分,这部分回顾了编程的基本原理:问题定义、算法、数据结构以及程序验证和测试。第二部分围绕效率这个主题展开。效率问题有时本身很重要,又永远都是进入有趣编程问题的绝佳跳板。第三部分用这些技术来解决排序、搜索和字符串等重要问题。

阅读本书的一个提示:不要读得太快。要仔细阅读,一次读一章。要尝试解答书中提出的问题——有些问题需要集中精力思考一两小时才会变得容易。然后,要努力解答每章末尾的习题:当读者写下答案时,从本书学到的大部分知识就会跃然纸上。如有可能,要先与朋友和同事讨论一下自己的思路,再去查阅本书末尾的提示和答案。每章末尾的“深入阅读”并不算是学术意义上的参考文献表,而是我推荐的一些好书,这些书是我个人藏书的重要部分。

本书是为程序员而写的。我希望书中的习题、提示、答案和深入阅读对每个人都有用。本书已用作算法、程序验证和软件工程等课程的教材。附录A中的算法分类可供实际编程人员参考,该附录同时还说明了如何在算法和数据结构课程中使用本书。

11 重构 改善既有代码的设计(第2版 平装版)

本书是一本为专业程序员编写的重构指南。我的目的是告诉你如何以一种可控且高效的方式进行重构。你将学会如何有条不紊地改进程序结构,而且不会引入错误,这就是正确的重构方式。

按照传统,图书应该以概念介绍开头。尽管我也同意这个原则,但是我发现以概括性的讨论或定义来介绍重构,实在不是一件容易的事。因此,我决定用一个实例作为开路先锋。第1章展示了一个小程序,其中有些常见的设计缺陷,我把它重构得更容易理解和修改。其间你可以看到重构的过程,以及几个很有用的重构手法。如果你想知道重构到底是怎么回事,这一章不可不读。

第2章讨论重构的一般性原则、定义,以及进行重构的原因,我也大致介绍了重构面临的一些挑战。第3章由Kent Beck介绍如何嗅出代码中的“坏味道”,以及如何运用重构清除这些“坏味道”。测试在重构中扮演着非常重要的角色,第4章介绍如何在代码中构筑测试。

从第5章往后的篇幅就是本书的核心部分——重构名录。尽管不能说是一份巨细靡遗的列表,却足以覆盖大多数开发者可能用到的关键重构手法。这份重构名录的源头是20世纪90年代后期我开始学习重构时的笔记,直到今天我仍然不时查阅这些笔记,作为对我不甚可靠的记忆力的补充。每当我想做点什么——例如拆分阶段(154)——的时候,这份列表就会提醒我如何一步一步安全前进。我希望这是值得你日后一再回顾的部分。

12 Linux系统运维指南:从入门到企业实战

本书系统全面、由浅入深地介绍了Linux系统运维的知识,以及在企业实际环境中用到的各类服务、架构和运维管理。本书分基础篇、LAMP/LNMP架构篇、应用服务篇和架构运用篇。基础篇详细介绍Linux系统的基础知识,LAMP/LNMP架构篇介绍时下企业中最常见的两种架构的部署与配置,应用服务篇以企业实际运维环境为出发点详细介绍当下企业用到的各类开源软件服务,架构运用篇对前三篇的知识进行总结,并结合企业的实际场景加以实践。

13 Python金融实战案例精粹

适读人群 :金融学习者、金融从业者,以及对Python的金融应用感兴趣的人士。

.Python金融布道者、华尔街先生斯文博士新作;.88个原创案例、308项Python编程任务帮你快速掌握相关知识;.赠送62张Excel数据表、88张Python彩图文件,可在异步社区轻松下载。

【贴近实务】

全部案例以及相关基础数据均来源于现实的金融市场,案例的场景将Z大化地还原日常金融实务工作。

【覆盖面广】

案例涵盖广泛的金融产品、金融机构和金融市场,读者可以结合自身需要,获得高效实用的解决方案。

【体验感佳】

通过本书不同案例之间的岗位角色变化,读者能获得身临其境的体验,更好地融入到金融实战。

【实用性强】

本书每个案例涉及3~5项编程任务,任务之间相互关联、层层推进,打通从“技能端”到“应用端”的最后一公里。

14 笨办法学Python 3 进阶篇知乎、b站等技术大牛倾力推荐的畅销书《笨办法学Python 3》的进阶篇;数百万编程爱好者追捧的技术专家的全新作品; 52个习题、1130分钟的教学视频,带你步入Python进阶的大门。

本书作者创建了一套非常有效的Python 3学习体系,只要跟着学,你就会像作者教过的数百万初学者一样获得成功!只要你能自律、投入和坚持!

在《“笨办法”学Python 3》一书中,作者介绍了使用Python 3进行编程的基础知识,而在这本进阶篇中,作者通过让你完成52个精心设计的习题来超越基础,提升水平。书中的每个习题均结合实际演示让你入门,还有附加挑战让你加深理解,以此来帮你掌握一项关键的实践技能。作者还提供了18小时的教学视频,教你如何破坏、修正和调试代码。

首先,你将了解如何分析在软件中想要实现的概念和想法或想要解决的问题;然后,你将逐渐掌握根据自己的分析去设计解决方案,并尽可能简单优雅地实现它们的能力。作者自始至终都强调“过程”,选择正确且适合自己的编程过程,你就会获得开始的动力、解决问题的创造力和保证代码质量的能力,这样你就能写出他人可以信赖的代码。一开始会很难,但很快你就会上手,并且会感觉很棒!

● 使用文本编辑器管理复杂的项目

● 学会利用数据结构的强大功能

● 应用算法处理数据结构

● 掌握必要的文本分析和处理技术

● 使用SQL有效且合逻辑地对存储数据进行建模

● 学习强大的命令行工具和使用技能

● 在完整的项目中结合多种实践

本书会让你的每一分钟投入都有回报。你很快就会超越单纯地编写能运行的代码,转而编写能解决实际问题的高质量的Python代码。你将成为一名优秀的Python程序员。

本书适合所有已经开始使用Python的人,包括初级开发人员和已经升级到Python 3.6及以上版本的经验丰富的Python程序员。

标签: #python中花括号的作用