首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

每个程序员都应该阅读的最有影响力的书是什么?

本书之所以在全球范围内广泛传播,被一代代开发者奉为圭臬,盖因它可以创造出真正的价值:或编写出更好的软件,或探究出编程的本质,而所有收获均不依赖于特定语言、框架和方法。...全书选材经典、内容丰富、结构合理、逻辑清晰,对本科生的数据结构课程和研究生的算法课程都是非常实用的教材,在IT专业人员的职业生涯中,本书也是一本案头必备的参考书或工程实践手册。 5....干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码操作实践。...也许你觉得 C++ 复杂,但这两本书中带来对代码稳定性的探索方式让人受益,因为这种思维方式同样可以用在其它地方。以至于各种模仿者,比如《Effective Java》也是一本经典书。 10....Agile Software Development, Principles, Patterns, and Practices by Robert C.

45730

从算法到HPC:最全优秀编程书籍列表

还是在面对市场上琳琅满目的书籍时挑花了眼?本文作者精选了一些优秀的编程书,并分门别类地整理成列表。...小编尽量找了书籍的中文版和豆瓣评分&简介,来看看有没有你中意的书吧↓↓ 项目地址:https://github.com/majikarp/awesome-programming-books#id-section2...人工智能 国内的机器学习入门经典读物非西瓜书莫属,那关于人工智能这个大方向呢?...Brent 未找到中文版 《Linear Programming: Foundations and Extensions》 作者:Robert J Vanderbei 未找到中文版 计算机安全 《Principles...book.douban.com/subject/4289836/ 《UNIX Systems for Modern Architectures》 作者:Curt Schimmel 中文译本:《现代体系结构上的

1.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    小二,来一份机器学习书单!

    █ Jason Brownlee: 我喜欢书,对于搞到的每一本机器学习书籍,我都要去读。 我认为,有好的参考资源,是对你心中机器学习谜题进行“解惑”的最快方式。...依据话题:Python,深度学习等 依据出版商:Packt,O’Reilly 等 所有书都包括了亚马逊、或京东链接,你可以点击链接了解更多。 ▌如何使用这份指南?...找到一个你最感兴趣的话题 浏览所选类别的书目 购书、借书、下载 从头读到尾 重复以上过程 把书摆在家里、办公室显眼的地方,跟你读过那本书是两码事。别瞎搞收藏。...AI 研习社提醒,该榜单上的书籍质量参差不齐:从严谨设计、编排的图书到装订在一起的博文。...▌3.3 Packt 机器学习书籍 感觉上 Packt 全面拥抱了数据科学和机器学习领域的图书出版。他们有一大堆针对晦涩难懂机器学习库的书。

    1.2K50

    超级干货:你应该知道的那些编程原则!!

    /) 避免过早优化 引用Donald Knuth(http://en.wikiquote.org/wiki/Donald_Knuth)所说: 程序员浪费大量的时间来思考或担心程序的非关键部分的速度,而考研尝试这些优化实际上在调试和维护时有很强的负面影响...,概念上不相关的东西在系统中不应该相关。...也就是说,这样的实体可以允许在不改变其源代码的情况下修改其行为。...例如,如果一个类实现了一个方法,但只是简单的抛出异常,那么调用方将需要知道实际上不应该调用这个方法。 怎么做 避免臃肿的接口。...利用这个原则,程序员可以更加自信地进行编码。查询方法可以在任何地方以任何顺序使用,因为它们不会改变状态。而使用命令,你必须更加小心。

    22210

    程序猿必须知道的一些有用的网站

    下面是你应该访问的一些网站的不详尽的列表,一旦我得到了另一个链接,这个列表就会被更新,但是你也可以添加你知道的网站来做贡献。...、更好地了解世界的地方 Learn Anything: 策划知识图的社区,在那里可以找到学习任何东西的最佳路径 devRant: 社区,在那里你可以咆哮和宣泄你的压力 Codementor: 导师式社区...,可以通过1对1的帮助等在同行开发人员的指导下学习 新闻 Hacker News: 程序员的新闻聚合,在那里礼貌为王,尝试以一篇时事通讯在你的收件箱里获取头条新闻 Hacker Newsletter:...well: 如何成为一名程序员,或搜索的艺术 Code Review Best Practices: Kevin London 的博客 Dieter Rams: 10 Principles of Good...The C++ Programming Language : C++ 编程语言 Bjarne Stroustru的问与答 : C++ 问与答 Bjarne Stroustrup的 C++ 风格以及技术问答

    1.5K100

    程序猿必须知道的一些有用的(外国)网站

    下面是你应该访问的一些网站的不详尽的列表,一旦我得到了另一个链接,这个列表就会被更新,但是你也可以添加你知道的网站来做贡献。...分享知识、更好地了解世界的地方 Learn Anything : 策划知识图的社区,在那里可以找到学习任何东西的最佳路径 devRant : 社区,在那里你可以咆哮和宣泄你的压力 Codementor...: 导师式社区,可以通过1对1的帮助等在同行开发人员的指导下学习 新闻 Hacker News : 程序员的新闻聚合,在那里礼貌为王,尝试以一篇时事通讯在你的收件箱里获取头条新闻 Hacker Newsletter...well : 如何成为一名程序员,或搜索的艺术 Code Review Best Practices : Kevin London 的博客 Dieter Rams : 10 Principles of...The C++ Programming Language : C++ 编程语言 Bjarne Stroustru的问与答 : C++ 问与答 Bjarne Stroustrup的 C++ 风格以及技术问答

    3.9K22

    程序员能力提升:你应该知道的那些编程原则!!

    本文翻译自Programming Principles(http://java-design-patterns.com/principles/)。 每个程序员都可以从理解编程原理和模式中受益。.../) 避免过早优化 引用Donald Knuth(http://en.wikiquote.org/wiki/Donald_Knuth)所说: 程序员浪费大量的时间来思考或担心程序的非关键部分的速度,而考研尝试这些优化实际上在调试和维护时有很强的负面影响...,概念上不相关的东西在系统中不应该相关。...例如,如果一个类实现了一个方法,但只是简单的抛出异常,那么调用方将需要知道实际上不应该调用这个方法。 怎么做 避免臃肿的接口。...利用这个原则,程序员可以更加自信地进行编码。查询方法可以在任何地方以任何顺序使用,因为它们不会改变状态。而使用命令,你必须更加小心。

    32811

    C++之父Bjarne Stroustrup:我会为全球数十亿行 C++ 代码带来一个崭新的解决方案

    当 C++ 社区聚集在科罗拉多州奥罗拉市参加“CppCon”C++ 会议时,Bjarne Stroustrup 在一场演讲中向观众承诺,他将首先明确该编程语言所需的安全措施的具体类型,“然后我将向大家展示几十年来我们一直在这方面努力的成果...但 Stroustrup 不希望看到 C++ 的内容表达受到限制,事实上,他设想了一种仍然遵守该语言 ISO 标准的解决方案。“我们需要它是 C++。...“性能不应该有任何下降……实际上,一些编写安全代码的技术可以提高性能。我主要说的是编译器和静态检查,因为它是免费的,或者真的可以提高性能。” Stroustrup 找到了他的解决方案:配置文件。...因此,谈到添加安全改进工具时,“我认为配置文件注释应该有助于解决这个问题。” Stroustrup 提出了总体策略:使用静态分析来消除潜在错误。...Stroustrup 指出,他所描述的大部分内容都已经被尝试过,甚至是规模化的实践。“但没有哪里会将这一切整合成一个一致、连贯的整体。这就是我认为我们应该做的。”

    22810

    C++ 之父 Bjarne Stroustrup:我会为全球数十亿行 C++ 代码带来一个崭新的解决方案

    当 C++ 社区聚集在科罗拉多州奥罗拉市参加“CppCon”C++ 会议时,Bjarne Stroustrup 在一场演讲中向观众承诺,他将首先明确该编程语言所需的安全措施的具体类型,“然后我将向大家展示几十年来我们一直在这方面努力的成果...但 Stroustrup 不希望看到 C++ 的内容表达受到限制,事实上,他设想了一种仍然遵守该语言 ISO 标准的解决方案。“我们需要它是 C++。...“性能不应该有任何下降……实际上,一些编写安全代码的技术可以提高性能。我主要说的是编译器和静态检查,因为它是免费的,或者真的可以提高性能。” Stroustrup 找到了他的解决方案:配置文件。...因此,谈到添加安全改进工具时,“我认为配置文件注释应该有助于解决这个问题。” Stroustrup 提出了总体策略:使用静态分析来消除潜在错误。...Stroustrup 指出,他所描述的大部分内容都已经被尝试过,甚至是规模化的实践。“但没有哪里会将这一切整合成一个一致、连贯的整体。这就是我认为我们应该做的。”

    41210

    2017计算机系书单推荐

    可以说我是一时兴起。很多人都说 我搜这么多书,不会看的。我笑笑,对,我可能真的看不完,但我不会不看。...这三份书单的书pdf版相关的,不相关的我都找了,同时结合着百度,知乎,豆瓣等各网站找到各个科目相关知名书籍的pdf。抱歉原英文本没有几个,因为我自己英语水平还看不懂外著。...脚本之家--搜索框直接搜索 第二个就是 会报有危险的网盘网站,虽然我也不知道有什么危险,你们如果知道告诉我,我把这个删了 搜索--点击资源--跳转百度盘 第三个就是  不知道在哪里淘的搜索网站 直接下载...CSDN下载页--右边搜索栏使用就好 在这里点名三本书:《自然语言简明教程》《深入理解机器学习 原理及算法》《数据库系统设计实现与管理》这三本书在网上的pdf资源我没有找到,尽管我动用了谷歌什么的,都只能找到加密的...然后我买了。如果有需要这三本书的话,你就别买了,我给你。 本文引用出处 ZhiSheng的github好书推荐单 箴光司的知乎回答 感谢这两位以及各位大牛在网络上提供的答案,使我找到了这些书。

    1.7K100

    初学者如何从零学习人工智能?

    链接:oschina.net/news/78629/beginners-how-to-learn-from-zero-artificial-intelligence 此文是想要进入人工智能这个领域、但不知道从哪里开始的初学者最佳的学习资源列表...“Programming Collective Intelligence”这本书是一个很好的资源,可以学习ML 算法在Python中的实际实现。 它需要你通过许多实践项目,涵盖所有必要的基础。...我推荐在视频的同时可以一起阅读AIMA,因为它是基于这本书,并从不同的角度解释了很多类似的概念,使他们更容易理解。它的讲解相对较深,对初学者来说是非常不错的资源。...Principles of Neural Science (神经科学原理)是我能找到的最好的书,深入NS。 它谈论的是核心科学,神经解剖等。 非常有趣,但也很长 – 我还在读它。...六、其他资源 Metacademy  – 是你知识的“包管理器”。 你可以使用这个伟大的工具来了解你需要学习不同的ML主题的所有先决条件。 kaggle  – 机器学习平台

    89570

    初学者如何从零学习人工智能?看完你就懂了

    、但不知道从哪里开始的初学者最佳的学习资源列表。...“Programming Collective Intelligence”这本书是一个很好的资源,可以学习ML 算法在Python中的实际实现。 它需要你通过许多实践项目,涵盖所有必要的基础。...我推荐在视频的同时可以一起阅读AIMA,因为它是基于这本书,并从不同的角度解释了很多类似的概念,使他们更容易理解。它的讲解相对较深,对初学者来说是非常不错的资源。...Principles of Neural Science (神经科学原理)是我能找到的最好的书,深入NS。 它谈论的是核心科学,神经解剖等。 非常有趣,但也很长 – 我还在读它。...六、其他资源 Metacademy  – 是你知识的“包管理器”。 你可以使用这个伟大的工具来了解你需要学习不同的ML主题的所有先决条件。

    78470

    C++ 程序员入门之路——旅程的起点与挑战

    对,就是那个强大到可以用来编写操作系统的语言!无论你是计算机科学的学生,还是在全栈领域摸爬滚打的老兵,C++总能给你带来一些新的启发和挑战。...3️⃣ 提升C++开发技能的路径 3.1 深入学习数据结构和算法 理解和掌握各种数据结构和算法,并尝试用C++实现它们。...,新的特性和标准在不断地推出,持续学习是非常重要的。...总结 学习C++是一条充满挑战但也非常有趣的路。通过理论学习、实际实践和社区交流,我们可以逐渐掌握这门强大的编程语言,并在全栈开发的道路上更进一步!...参考资料 Programming: Principles and Practice Using C++ by Bjarne Stroustrup C++ Primer by Stanley B.

    19010

    C++核心准则边译边学-序言

    从今天开始作者尝试翻译和学习该文档。 在接下来的文章中,如果没有特别说明,英文原文都来自下面的链接,而中文部分是作者的翻译和理解。...【http://www.stroustrup.com/】 Herb Sutter【https://herbsutter.com/】 大家可以直接打开作者姓名后面的链接,也可以参照下面的来自百度的简介。...Bjarne Stroustrup 1982年,美国AT&T公司贝尔实验室的Bjarne Stroustrup博士在c语言的基础上引入并扩充了面向对象的概念,发明了—种新的程序语言。...我们使这个项目对于“友好的用户”可用,可复制,可修改和可继承,希望可以得到建设性的输入。...可以从这里【https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#SS-ack】找到是贡献者清单.

    1.6K12

    GitHub 40000星!收下这份宇宙最强「程序员装备指南」

    比如, /r/cscareerquestions : 这是一个非常大的面试问题列表是我在为4大面试时用到的,我认为对大家也是有用的 10个最频繁的SQL查询面试问题 逻辑题答案汇总 算法设计流程 资质问题与答案...学习java的最好的书 : Java基础 Bjarne Stroustrup's C++风格和技术问答 : C++问答 Bjarne Stroustrup's FAQ : The C++ FAQ C++...关于研究和写作的建议 博士论文 在会议上讨论的实用技巧 研讨会和报告 Latex参考 Begin Latex in minutes: 针对初学者的Latex的简单介绍帮助你轻松掌握Latex Lshort...Launch Pad :由Canonical、LaunchPad维护,特别针对在Ubuntu上运行的项目。...,可以选择其中一个MWOS项目 以上只是选取了其中一部分内容,可见这篇高星帖子内容丰富,感兴趣的朋友可以戳链接,把资源全部「私有」,最强程序员就是你!

    83220

    动态调整 tkinter 中 Spinbox 的范围

    如果有人知道哪里可以找到纯 Python/tkinter“日期和时间输入”小部件的公共领域源代码(理想情况下,它可以处理闰年和所有月末情况),则请向我指出该存储库,不胜感激。...我能找到的最接近的解决方案是这个 OptionMunu 解决方案(根据另一个 OptionMenu 中的选择更改 OptionMenu),但由于“不隐藏”要求,无法使用它。...我还尝试过在所有方法中使用“value=”,但没有成功(首选“to=....”选项)。我也尝试使用动态范围设置 Spinbox 或者我开始怀疑它们是否在创建 Spinbox 后无法更改?...2、解决方案2.1 DaySpinBox 设置动态范围所有小部件的所有选项始终可以动态配置。我记得只有一个例外,这是一个几乎没有人会使用的特性:框架上的类选项。...关于更新日 Spinbox,我没有看到您尝试在何处更新它,因此我不确定为什么您认为它应该更新。要更新 Spinbox,请将命令附加到 month Spinbox,然后在回调中执行更新。

    5810

    使用CSV模块和Pandas在Python中读取和写入CSV文件

    CSV模块功能 在CSV模块文档中,您可以找到以下功能: csv.field_size_limit –返回最大字段大小 csv.get_dialect –获取与名称相关的方言 csv.list_dialects...开发阅读器功能是为了获取文件的每一行并列出所有列。然后,您必须选择想要变量数据的列。 听起来比它复杂得多。让我们看一下这个例子,我们会发现使用csv文件并不是那么困难。...在Windows中,在Linux的终端中,您将在命令提示符中执行此命令。...在仅三行代码中,您将获得与之前相同的结果。熊猫知道CSV的第一行包含列名,它将自动使用它们。 用Pandas写入CSV文件 使用Pandas写入CSV文件就像阅读一样容易。您可以在这里说服。...您可以查看Python的官方文档,并找到更多有趣的技巧和模块。CSV是保存,查看和发送数据的最佳方法。实际上,它并不像开始时那样难学。但是只要稍作练习,您就可以掌握它。

    20.1K20

    GitHub 40000星!收下这份宇宙最强「程序员装备指南」

    比如, /r/cscareerquestions : 这是一个非常大的面试问题列表是我在为4大面试时用到的,我认为对大家也是有用的 10个最频繁的SQL查询面试问题 逻辑题答案汇总 算法设计流程 资质问题与答案...学习java的最好的书 : Java基础 Bjarne Stroustrup's C++风格和技术问答 : C++问答 Bjarne Stroustrup's FAQ : The C++ FAQ C++...Serpent AI : 游戏代理框架 研讨会、论文、会谈等 关于研究和写作的建议 博士论文 在会议上讨论的实用技巧 研讨会和报告 Latex参考 Begin Latex in minutes...Launch Pad :由Canonical、LaunchPad维护,特别针对在Ubuntu上运行的项目。...,可以选择其中一个MWOS项目 以上只是选取了其中一部分内容,可见这篇高星帖子内容丰富,感兴趣的朋友可以戳链接,把资源全部「私有」,最强程序员就是你!

    41010
    领券