C++黑皮书

苦逼的码农

共 2952字,需浏览 6分钟

 ·

2021-08-24 17:15

大家好,我是说帅地。


今天给大家推荐几本 C++ 之父 Stroustrup 的黑皮书籍。


C++之父Bjarne Stroustrup


Stroustrup是科学界明星人物,曾获《财富》杂志“美国12位最年轻的科学家”称号,以及BYTE杂志“近20年来计算机工业最具影响力的20人”称号。他的学术造诣也极高,是美国工程院院士、IEEE会士、ACM会士,曾获Sigma Xi(科学研究协会)的William Procter奖(首位获得此奖的计算机科学家)。他对教育行业的贡献也极大,曾担任德州农工大学首席教授,为剑桥大学、哥伦比亚大学、普林斯顿大学等知名学府教育事业做出重要贡献。他的几本著作被翻译成20多种编程语言,是剑桥大学、哥伦比亚大学、普林斯顿大学、德州农工大学、上海交通大学等全球大量知名学府的核心教材。




1

 享誉全球的C++作品




为了帮助我更好地学习和使用C++,Stroustrup为我们创建了一个丰富的C++元宇宙(C++之父的C++元宇宙)。这个元宇宙为C++教学者和学习者提供了丰富的方法和素材,其中最核心的就是他的4本享誉全球的著作。


(1)《C++程序设计语言(原书第4版)》


这本书从C++语言设计者的角度讲解了专业C++程序员需要的每个语言特性和标准库组件,并解析了它们的设计初衷、原理和制约因素,是数百万C++程序员学完后推崇备至的C++语言学习宝典。



(2)《C++程序设计:原理与实践(原书第2版)》


这本书专注于C++程序设计技术、实践和技巧,而非C++语言本身,是一本能让你学到基本的实用编程技术(包括支持这种技术的编程思想和语言工具)的最简单书籍,能帮助你理解并编写复杂的程序。它会教你编写“有用的程序”,而非“玩具程序”,帮助你实现从“工匠”(码农)到“艺术家”的升华。



(3)《C++语言导学(原书第2版)》


这本书是为有其他编程语言经验(如Java)快速了解C++量身定做的,它覆盖了C++大多数语言特性和标准库组件,但只是概览,能带你在3个小时内认识完整的C++及其背后的设计思想。写作手法、内容结构、示例选取都推陈出新,不枯燥,不教条;文字虽少,内容却丰富,直指关键。




2

 C++学习路线图



根据这4本著作的不同内容和特性,Stroustrup为不同水平和背景的C++程序员和教师制定4个路线图,能帮助大家学到最正宗的C++知识,而且能少走弯路。


路线图1:如果我没有编程经验,也没有C++语言基础,我该怎么学?

推荐你先系统学习《C++程序设计语言(原书第4版)》,然后深入学习《C++程序设计:原理与实践(原书第2版)》。


路线图2:如果我有C++语言基础,想写出工程级C++代码,我该怎么学?

推荐你先深入学习《C++程序设计:原理与实践(原书第2版)》,然后再系统学习《C++程序设计语言(原书第4版)》。


路线图3:如果我有其他语言编程经验,没有C++语言基础,我该怎么学?

建议你先快速学习《C++语言导学》,然后系统学习《C++程序设计语言(原书第4版)》,最后再深入学习《C++程序设计:原理与实践(原书第2版)》。


路线图4:如果我是教师,Stroustrup的书适合用来教学吗?

非常适合!剑桥大学、普林斯顿大学、上海交大等全球大量的名校都在用Stroustrup的书作为教材,取得了非常好的成效。为了帮助教师教学,Stroustrup还专门为教师编写了教学指南、配套PPT、习题等,所以他的书在C++课堂深受欢迎,是公认的C++教材的事实标准。


具体教学时,推荐《C++程序设计语言(原书第4版)》和《C++程序设计:原理与实践(原书第2版)》结合使用,前者讲透C++的语言特性和标准库以及它们的设计原理,帮助学生打下扎实的语言基础;后者深入地讲解了C++程序设计的技术和技巧,能引导学生在掌握语言后写出真正有用的程序。由于学校课时有限,建议以前者为主,后者为辅,对教师的授课能力有一定的考验。


当然,要成为一名合格甚至是优秀的C++程序员,只看书肯定是不够的。用Stroustrup的话来说:“学习程序设计最好的方法是实践,是编写有用的代码,而非玩具代码”。

 



RECOMMEND

推荐阅读
01

《C++程序设计语言(原书第4版)》  

  

作者:(美)本贾尼·斯特劳斯特鲁普(Bjarne Stroustrup)

译者:王刚杨巨峰

C++之父作品,40余年长销不衰,被翻译为20余种语言,

世界名校教材,数百万程序员学习C++的推崇之作



推荐理由

本书是在C++语言和程序设计领域具有深远影响、畅销不衰的经典著作,由C++语言的设计者和最初的实现者Bjarne Stroustrup编写,对C++语言进行了最全面、最权威的论述,覆盖标准C++以及由C++所支持的关键编程技术和设计技术。本书英文原版一经面世,即引起业内人士的高度评价和热烈欢迎,先后被翻译成德、希、匈、西、荷、法、日、俄、中、韩等近20种语言,数以百万计的程序员从中获益,是无可取代的C++经典力作。



02

《C++程序设计:原理与实践(原书第2版)》


作者:[美] 本贾尼·斯特劳斯特鲁普(Bjarne Stroustrup)

译者:任明明王刚李忠伟刘晓光

C++之父作品,畅销全球10余年,

被翻译为20余种语言,1182道习题,

C++程序员从匠人到艺术家必读之作



推荐理由

将经典程序设计思想与C++开发实践完美结合,全面地介绍了程序设计基本原理,包括基本概念、设计和编程技术、语言特性以及标准库等,教你学会如何编写具有输入、输出、计算以及简单图形显示等功能的程序。此外,本书通过对C++思想和历史的讨论、对经典实例(如矩阵运算、文本处理、测试以及嵌入式系统程序设计)的展示,以及对C语言的简单描述,为你呈现了一幅程序设计的全景图。



03

《C++语言导学(原书第2版)》


作者:[美]本贾尼·斯特劳斯特鲁普(Bjarne Stroustrup)

译者:王刚

C++之父作品,畅销全球近10年,322条编程建议,

可帮助有经验的程序员3小时了解C++语言全貌和设计思想



推荐阅读

在本书中,C++的创造者本贾尼•斯特劳斯特鲁普描述了现代C++语言的构成。这本简洁、自成体系的导引书籍包含了C++语言大多数主要特性和标准库组件。本书通过介绍编程风格(例如面向对象编程和泛型编程)引出支持它们的C++特性。从基本特性开始,延伸到更宽范的进阶主题,包括很多C++17新特性,例如移动语义、一致初始化、lambda表达式、改进的容器、随机数以及并发。本书非常全面,甚至包含一些为C++20提出的扩展,例如概念和模块。本书最后讨论了C++语言的设计和演化。


大家可以根据书籍介绍去选择适合自己的,另外我前几天也写过 C++ 的学习路线以及 C++ 的面试题哦。


帅地准备转行C++了,硬肝了 15 万字。。。


肝完了,C++ 开发学习路线


浏览 74
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报