How to Design Programs_ An Introduction to Programming and Compu...
本书《How to Design Programs: An Introduction to Programming and Computing》为读者介绍程序设计的基础知识和基本概念,由Matthias Felleisen, Robert Bruce Findler, Matthew Flatt以及Shriram Krishnamurthi编写。这本书是为《Structure and Interpretation of Computer Programs》(SICP)课程准备的教材,旨在教授读者编程和计算的基础知识。 在本书中,作者选择了Lisp语言和DrScheme环境作为教学工具,因为它们被广泛认为是编程教育中非常有力量的工具。通过本书,读者将了解如何处理数据、设计程序、编写函数,以及如何处理复杂的编程问题。 书中的内容被分为多个章节,每个章节都有其特定的主题和实践练习。以下是本书所涵盖的知识点概要: 1. 程序设计基础 - 程序设计的基本原理:本书强调了程序设计不仅仅是要懂得如何编写代码,更重要的是要学会如何思考和设计程序。 - 程序和计算机:介绍了程序与计算机之间的关系,以及如何用程序控制计算机。 - 数字、表达式和简单程序:深入讲解了数据类型、算术运算和表达式,以及如何通过程序解决简单的数学问题。 2. 函数与变量 - 函数组成:本书详细介绍了如何通过组合不同函数来构建复杂的程序逻辑。 - 变量定义:通过学习变量的作用域和生命周期,以及如何在程序中合理使用变量。 3. 条件表达式与函数 - 布尔值与关系:涵盖了布尔逻辑和数据之间的关系。 - 测试条件的函数:教授如何使用函数来测试数据条件。 - 条件函数设计:介绍了如何根据数据的条件来设计不同的函数路径。 4. 符号信息处理 - 符号操作练习:提供了针对符号处理的实践练习,帮助读者熟练地进行符号操作。 5. 复合数据 - 结构体的定义和数据定义:讲解了如何定义和操作复合数据结构,例如列表、向量等。 - 设计复合数据的函数:教授如何根据复合数据的特点来设计相应的程序处理函数。 6. 数据种类的多样性 - 数据的混合与区分:讨论如何在程序中处理不同类型的数据,并根据类型来设计程序。 - 组合函数的重访:回顾了如何将多个函数组合起来解决复杂问题。 7. 实践练习 - 简单图形绘制:通过实践练习,例如绘制简单图形,来加深对图形数据处理的理解。 - 运动图形设计:通过设计可以运动的图形来加深对动画和实时数据处理的理解。 本书附录包括了各种图形的索引和对编程概念的详细解释,让读者可以在阅读过程中随时查找相关知识点。 需要注意的是,本书使用的编程语言Lisp是历史上最古老也是最具有影响力的编程语言之一,它拥有非常灵活的语法和强大的抽象能力,对于理解编程语言的设计和学习计算机科学的基本概念非常有帮助。而DrScheme是一个专门用于教学的编程环境,提供了丰富的工具和库,使得学习过程更加便捷。 《How to Design Programs: An Introduction to Programming and Computing》不仅适合初学者入门学习,也为进一步深入理解编程和计算机科学提供了坚实的基础。通过学习这本书,读者可以掌握设计程序的实用方法,并为未来更复杂的软件开发和计算机科学研究打下坚实的基础。
剩余741页未读,继续阅读
- yrjamie2019-11-01This is the pretty correct one which you're looking for.
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- rpi4b基于uboot通过nfs挂载最新主线Linux内核的注意事项
- Cocos2d-x教程视频TMX地图解析
- Cocos2d-x教程视频CocosStudio 2.0 文件格式解析
- 基于 Van.js 的简单前端路由组件(支持字符串和正则表达式匹配等).zip
- Cocos2d-x教程视频CocosStudio 2.0 容器控件
- 学习资源-07~11,备份
- (源码)基于Flink和Kafka的实时用户行为日志分析系统.zip
- (源码)基于Arduino的机器人避障系统.zip
- Cocos2d-x教程视频Cocos2d-x游戏实战项目开发记忆卡片
- (源码)基于FreeRTOS和RP2040的实时操作系统应用模板.zip