基本信息

编辑推荐
通过C++理解面向对象程序设计,涵盖C++语法、C++新特点、数据结构、STL等
内容简介
作译者
贝赫鲁兹·A. 佛罗赞(Behrouz A. Forouzan) 德安扎学院荣休教授,主导了计算机信息系统专业的课程建设。此外,他还是多家公司的系统开发咨询顾问。除本书外,他还著有Foundations of Computer Science、Computer Networks: A Top-Down Approach和Data Communications and Networking等畅销书籍。
理查德·F. 吉尔伯格(Richard F. Gilberg) 德安扎学院退休教授,主要讲授计算机编程、数据结构和Web开发课程。在加入德安扎学院之前,他曾在一家大型航空航天公司担任程序员、分析师和经理。
---译者简介---
江红 华东师范大学副教授,博士。1994年毕业于复旦大学计算机系。曾荣获上海市教学成果一等奖、华东师范大学教学成果一等奖、华东师范大学优秀任课教师奖等荣誉。
余青松 华东师范大学高级工程师。1990年毕业于华东师范大学并留校任教。编著计算机相关教材30余本,在国内外学术期刊和学术会议上发表科技论文近百篇。
目录
译者序
前言
第1章 计算机与程序设计语言导论 1
1.1 计算机系统 1
1.1.1 计算机硬件 1
1.1.2 计算机软件 4
1.2 计算机语言 4
1.2.1 机器语言 4
1.2.2 符号语言 5
1.2.3 高级语言 5
1.3 计算机语言范式 5
1.3.1 面向过程的程序设计语言范式 6
1.3.2 面向对象的程序设计语言范式 7
1.3.3 函数式程序设计语言范式 7
1.3.4 逻辑式程序设计语言范式 8
1.3.5 C++语言中包含的范式 8
1.4 程序设计 8
1.4.1 理解问题 9
1.4.2 开发解决方案 9
前言
什么是C++语言
C++是从C语言和B语言派生出来的不断演进的程序设计语言。C++语言将结构的思想扩展到类,可以从单个类的定义创建不同的对象,并赋予每个数据元素不同的值。
此外,C++语言采用面向对象语言的思想来模拟现实生活。在现实生活中,我们定义一个类型,然后创建该类型的对象。在C++语言中,我们定义一个类,然后创建该类的对象。C++还包括继承的思想。在继承中,我们可以创建一个类,然后通过扩展定义来创建其他类,就像在现实生活中,可以扩展动物的概念以创建马、牛、狗等概念。
也许C++语言最有意思的部分是多态性。多态性使我们能够编写多个具有相同名称的操作版本,供不同的对象使用。这种实践行为在现实生活中也存在,例如动词“开”(open)的使用。我们可以说开了一家公司,开了一盒罐头,开了一扇门,等等。尽管在这些场景下均使用了“开”这个字,但在不同的对象上引发了不同的动作。
C++的最新功能包括标准模板库(Standard Template Library,STL),它是预定义的复杂对象和可以应用于这些对象上的操作的集合,以及帮助用户更加高效和连贯地解决问题的设计模式。
为什么编写本书
本书包括五个独具特色的目标模块,分别阐述如下。
讲授计算机程序设计
本书可以适用于以C++语言为载体的计算机程序设计的第一门课程。第1~6章就是基于上述目的而设计的。前六章讨论计算机系统和程序语言,同时还讨论C++语法和程序控制的基本知识,例如选择结构和循环结构。第1章到第6章对于使用C++语言学习程序设计而言是必不可少的组成部分。
讲授C++语言的语法
第7~12章是研究面向对象程序设计的基础。虽然第8和9章与C++的面向对象特性没有直接关系,但是我们认为这两章可以在学生理解了第7章讨论的面向对象程序设计的基础知识之后再进行讲授。
呈现C++的新特点
第13~17章讨论第一门或者第二门程序设计课程中通常包含的其他主题,可以按任意顺序进行讲授。
讨论数据结构并介绍STL
第18和19章(在线提供)是数据结构入门知识,它们为学生进一步选修数据结构课程提供知识准备。
介绍设计模式
第20章(在线提供)给出了面向对象程序设计中一些典型问题的简单可行的解决方案,如果不使用设计模式,解决这些问题的方法将更加复杂。第20章通过一系列针对特定问题的标准解决方案,让学生更加深入地洞察面向对象程序设计。虽然设计模式通常在计算机图形学课程中讲授,但我们将其应用于非图形问题,以帮助没有图形程序设计经验的学生更好地掌握它。
课程大纲
本书可以按以下顺序讲授:
媒体评论
通过本书你将了解
程序设计知识。涵盖计算机系统和程序语言,以及C++语法和程序控制的基本知识,如表达式、语句、选择结构、循环结构和函数等。
C++的语法。包含类、数组、指针、字符串和多态性等内容,为研究面向对象程序设计打下坚实基础。
C++的新特点。包含运算符重载、异常处理、模板、输入/输出流和递归,均为第一或第二门程序设计课程中通常包含的主题。
数据结构和STL。提供数据结构和STL的入门知识,为学生选修后续课程做好准备。
设计模式。讨论一些经典问题及简单可行的解决方案,帮助读者更加深入地理解面向对象程序设计。
作者简介
贝赫鲁兹·A. 佛罗赞(Behrouz A. Forouzan) 德安扎学院荣休教授,主导了计算机信息系统专业的课程建设。此外,他还是多家公司的系统开发咨询顾问。除本书外,他还著有Foundations of Computer Science、Computer Networks: A Top-Down Approach和Data Communications and Networking等畅销书籍。
理查德·F. 吉尔伯格(Richard F. Gilberg) 德安扎学院退休教授,主要讲授计算机编程、数据结构和Web开发课程。在加入德安扎学院之前,他曾在一家大型航空航天公司担任程序员、分析师和经理。
译者简介
江红华东师范大学副教授,博士。1994年毕业于复旦大学计算机系。曾荣获上海市教学成果一等奖、华东师范大学教学成果一等奖、华东师范大学优秀任课教师奖等荣誉。
余青松华东师范大学高级工程师。1990年毕业于华东师范大学并留校任教。编著计算机相关教材30余本,在国内外学术期刊和学术会议上发表科技论文近百篇。