发表于2025-03-03
Alexander Stepanov studied mathematics at Moscow State University from 1967 to 1972. He has been programming since 1972: first in the Soviet Union and, after emigrating in 1977, in the United States. He has programmed operating systems, programming tools, compilers, and libraries. His work on foundations of programming has been supported by GE, Brooklyn Polytechnic, AT&T,HP, SGI, and, since 2002, Adobe. In 1995 he received the Dr. Dobb’s Journal Excellence in Programming Award for the design of the C++ Standard Template Library.
Paul McJones studied engineering mathematics at the University of California, Berkeley, from 1967 to 1971. He has been programming since 1967 in the areas of operating systems, programming environments, transaction processing systems, and enterprise and consumer applications. He has been employed by the University of California, IBM, Xerox, Tandem, DEC, and, since 2003, Adobe. In 1982 he and his coauthors received the ACM Programming Systems and Languages Paper Award for their paper “The Recovery Manager of the System R Database Manager.”
Elements of Programming provides a different understanding of programming than is presented elsewhere. Its major premise is that practical programming, like other areas of science and engineering, must be based on a solid mathematical foundation. The book shows that algorithms implemented in a real programming language, such as C++, can operate in the most general mathematical setting. For example, the fast exponentiation algorithm is defined to work with any associative operation. Using abstract algorithms leads to efficient, reliable, secure, and economical software.
This is not an easy book. Nor is it a compilation of tips and tricks for incremental improvements in your programming skills. The book’s value is more fundamental and, ultimately, more critical for insight into programming. To benefit fully, you will need to work through it from beginning to end, reading the code, proving the lemmas, doing the exercises. When finished, you will see how the application of the deductive method to your programs assures that your system’s software components will work together and behave as they must.
Following key definitions, the book describes a number of algorithms and requirements for types on which they are defined that exemplify its abstract mathematical approach. The code for these descriptions—also available on the Web—is written in a small subset of C++ meant to be accessible to any experienced programmer. This subset is defined in a special language appendix coauthored by Sean Parent and Bjarne Stroustrup.
Whether you are a software developer, or any other professional for whom programming is an important activity, or a committed student, you will come to understand what the book’s experienced authors have been teaching and demonstrating for years—that mathematics is good for programming, that theory is good for practice.
Elements of Programming 下载 mobi pdf epub txt 电子书 格式 2025
Elements of Programming 下载 mobi epub pdf 电子书##p5 这个值可以卸载纸上,或者序列化后通过通信链路传输。 “通信链路” "良形式", "真部分的" 碰到这样的翻译,脑袋里过一遍还需要先转换为英文和大脑中的映像建立联系后,才能继续。 我怕是读不完了。
评分##看了六章了,看不下去了,太扯淡了,纯粹就是拿数学的皮来卖算法的肉。 数学也就那点,无非就是谓词逻辑的表述,代数(居然群环域模全扯一边,就是没说环上的自由摸)和序理论的核; 算法也就那点,无非就是一个碰撞点检测算法,各种求幂算法,排序算法,迭代器,欧几里德gcd...
评分 评分##感觉很难懂。都是一些推理的公式之类,不知道作者想要传递什么信息。算法?不像。基于数学推理的算法体系?不懂。 装帧到蛮朴素严谨的,是我喜欢的类型,可以z 13下,可惜我真的不懂,不买算了。
评分 评分 评分 评分Elements of Programming mobi epub pdf txt 电子书 格式下载 2025