请输入您要查询的百科知识:

 

词条 编程原本
释义

基本信息

作 者:(美)斯特潘诺夫(Stepanov, A.),(美)麦克琼斯(McJones, P.)

丛 书 名:计算机科学丛书

出 版 社:机械工业出版社

ISBN:9787111367291

出版时间:2012-01-01

页 数:296

内容简介

《编程原本》提供了有关编程的一种与众不同的理解。其主旨是,实际的编程也应像其他科学和工程领域一样基于坚实的数学基础。本书展示了在实际编程语言(如C++)中实现的算法如何在最一般的数学背景中操作。例如,如何定义快速求幂算法,使之能使用任何可交换运算。使用抽象算法将能得到更高效、可靠、安全和经济的软件。

这不是一本很容易读的书,它也不是能提升你的编程技能的秘诀和技巧汇编。本书的价值是更根本性的,其终极目标是提升你对编程的洞察力。要想从中大获裨益,你需要从头到尾认真学习:阅读代码,证明引理,完成练习。到结束之时,你将看到如何把这里讨论的演绎方法应用到你的程序中,保证你做出的软件部件能一起工作,并表现出它们所应该表现的行为。

书中给出的算法和需求针对某些被操作的类型。有关这些描述的代码(也可以通过Web得到)采用C++的一个小子集书写,这样做是为了让所有有经验的程序员都能理解。这个小子集可以看做一种特殊语言,是由Sean Parent和Bjarne Stroustrup一起设计的。

无论你是一位软件开发者,还是其他以编程作为一项重要活动的专业人员,或者是一名在校的学生,你都会逐渐理解本书的经验丰富的作者多年来一直在教授和阐释的道理:数学对于编程是绝好的东西,理论对于实际是绝好的东西。

编辑推荐

追溯数学原理,探求编程的本质

STL之父Alexander Stepanov力作

C++之父Bjarne Stroustrup鼎力推荐

北大数学学院教授裘宗燕老师倾情献译

作者简介

Alexander Stepanov 于1967~1972年间在国立莫斯科大学学习数学,从1972年开始在苏联,1977年移民后继续在美国从事编程工作。他编写过操作系统、编程工具、编译器和各种程序库。他在程序设计基础方面的工作先后得到GE、Polytechnic、AT&T、惠普、SGI和Adobe的支持。1995年因C++标准模板库的设计获Dr. Dobb, Journal的程序设计杰出贡献奖。

前言

前言:

本书将演绎方法应用于程序设计,讨论程序与保证它们能正确工作的抽象数学理论之间的联系.书中把反映这些理论的规程(speci.cation),基于这些理论写出的算法,以及描述算法性质的引理和定理一起呈现给读者.这些算法在一种实际程序设计语言里的实现是本书的中心。虽然规程主要是供人阅读,但它们也应该(或者说必须)严格地与非形式化的、供机器使用的代码相结合,必须在通用的同时又是抽象而且精确的。

与在其他科学和工程领域里的情况一样,适合作为程序设计的基础的同样是演绎方法。演绎方法能帮助我们将复杂系统分解为一些具有特定数学行为的组件,而这种分解又是设计高效、可靠、安全和经济的软件的前提。

本书是想奉献给那些希望更深入地理解程序设计的人们,无论他们是专职软件开发人员,还是把程序设计看作其专业活动中一个重要组成部分的科学家或工程师。

本书编写的基本想法是让读者从头到尾完整阅读。读者只有通过阅读代码、证明引理、完成练习,才能真正理解书中的各方面材料。此外我们还建议了一些项目,其中有些是完全开放的。本书的内容很紧凑,认真的读者最终会看到书中各部分之间的联系,以及我们选择这些材料的理由。发现本书在体系结构方面的原理应该是读者的一个目标。

我们假定读者已经具有完成各种基本代数操作的能力。还假定读者熟悉逻辑和集合论的基本术语,如普通本科生在离散数学课程中学习的内容。附录A总结了书中使用的各种记法。如果在一些特定的算法里需要某些抽象代数的概念,书中会给出相应的定义。我们还假定读者熟悉程序设计,理解计算机体系结构,理解最基本的算法和数据结构。

我们选用C++,是因为它组合了强有力的抽象设施和基础机器的正确表示。这里只用了该语言的一个小子集,需求被写成程序里的结构化注释。我们希望不熟悉C++的读者也能阅读本书。附录B描述了书中使用的C++子集。在书中的任何地方,在需要区分数学记法和C++的地方,根据所用的字体、排版和上下文就能确定用的是哪种意义(是数学的还是C++的)。虽然书中的许多概念和程序与STL(C++标准模板库)里的东西对应,但这里的一些设计决策是与STL不同的。书中还忽略了实际程序库(如STL)必须考虑和处理的许多问题,如名字空间、可见性、inline指令等等。

第1章描述值、对象、类型、过程和概念。第2~5章描述各种代数结构(如半群、全序集)上的算法。第6~11章讨论抽象内存上的算法。第12章讨论包含对象成员的对象。跋给出了我们对本书中阐释的工作途径的反思。

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/3/21 2:29:27