第13版新增的内容
第13版继续使用第12版引入的Python代码示例和类Python的伪代码。我们做出这种改变有几个原因。首先,本书已经包含了相当多的各种语言的代码,有几章还有详细的伪代码。其次,读者已经吸收了相当多的句法方面的知识,似乎可以将句法重新定位为在后续课程中会实际看到的语言。最后,更重要的是,越来越多的使用本书的教师断定,即使优先介绍计算的广度,对学生来讲,如果缺乏用于探索和实验的编程工具,许多课题也会很难掌握。
那为什么选择Python呢?语言的选择始终是一个有争议的问题,任何一种选择,反对的人都至少和支持的人一样多。Python是一个极好的中间选择,因为Python:
● 句法简洁易学;
● I/O原语简单;
● 数据类型和控制结构与先前版本中使用的伪代码原语很接近;
● 支持多个程序设计范式。
Python是一种成熟的程序设计语言,它拥有充满活力的开发社区和丰富的在线资源,便于进一步的研究。根据某些衡量标准,Python仍然是业界前5种最常用的程序设计语言之一,并且在计算机科学入门课程中的使用急剧增加。对非计算机专业的学生来讲,它是一门极其受欢迎的入门课程,并且已被其他像物理学和生物学这样的STEM[1]领域广泛接受,作为计算科学应用的首选语言。
[1] STEM是4个英语单词Science(科学)、Technology(技术)、Engineering(工程)和Mathematics(数学)的缩写。 ——译者注
然而,本书的重点仍然是广义的计算机科学概念;补充Python语言的内容是为了让读者能体会到比先前版本更浓的编程味儿,而不是为了全面地介绍编程。所涵盖的Python主题是由本书现有的结构决定的。因此,第1章涉及Python句法,用于表示数据——整数、浮点数、ASCII字符串或Unicode字符串等。第2章涉及Python运算,详细讨论反映了本章其余部分所讨论的机器原语。条件、循环和函数是在第5章引入的,那里需要使用这些结构来设计一个足够完整的描述算法的伪代码。简而言之,Python结构是用来进一步阐明计算机科学概念而不是劫持话题的。
每一章都能看到对前一版对应章节的修订、更新以及修正。