知识阅读 计算机入门 第四章 程序与编程
返回知识图谱
计算机入门 文炎同学 2024-03-18

第四章 程序与编程

从软件回到代码,理解程序由什么组成、编程在解决什么问题,以及代码怎样变成正在运行的程序。

ARTICLE / 07 SECTIONS
START READING07 SECTIONS

上一章里,我们看到软件不是一个图标,而是一组会被操作系统加载和管理的文件。那这些文件最初是怎么来的?谁告诉计算机要做什么?

答案会回到“程序”和“编程”。这一章不急着学习具体语法,只先建立一条从想法到运行结果的线:人提出目标,程序员写下代码,计算机在运行环境中执行它。

1. 程序是什么

程序是一组按顺序组织起来、可以被计算机执行的指令。 它把一个目标拆成计算机能够处理的步骤。

打开计算器、播放视频、保存文档、显示网页,这些动作背后都对应着程序。程序不一定有窗口,也不一定需要人直接点击;服务器上的网站服务、数据库服务和后台任务同样是程序。

软件是面向用户和功能的一组完整内容,程序则更强调“让计算机执行什么”。一个软件里可以包含多个程序、资源文件、配置和用户数据。

2. 编程是在做什么

编程就是把问题、规则和处理步骤写成计算机能够理解和执行的形式。

比如一个记账工具,不能只写“帮我算总支出”,还要把规则说清楚:读取哪些记录,怎样判断日期,如何相加,最后以什么方式显示结果。编程的核心不是敲键盘,而是把模糊目标变成明确步骤。

这也是编程和普通文字表达的区别:人可以根据上下文猜测意思,计算机需要更精确的结构、条件和顺序。

3. 编程语言是什么

计算机底层最终处理的是机器能够执行的指令,但人直接用这种形式编写程序非常困难。编程语言提供了一套更适合人阅读和组织的表达方式。

Python、JavaScript、Java、C++ 等都是编程语言。它们的写法、适用场景和运行方式不同,但都在做同一件事:让人能够描述数据、步骤、条件和关系,再由工具把这些描述交给计算机执行。

语言不是软件功能本身。同一个功能可以用不同语言实现,最后做成不同的软件或服务。

4. 代码怎样变成运行中的程序

写在文件里的代码还不是正在工作的程序。它需要经过相应的工具和运行环境,才能被计算机执行。

从问题和代码到运行中程序与结果的过程从问题和代码到运行中程序与结果的过程

有些语言会先被编译成更接近机器的形式,有些语言会由解释器或运行时逐步执行。入门阶段先记住区别就够了:代码是人的表达,运行中的程序是系统正在执行的结果。

这也解释了为什么同一份代码换到另一台电脑上,不一定能直接运行。那台电脑可能缺少解释器、编译器、依赖包、配置或其他运行条件。

5. 程序、软件和服务怎么区分

概念更关注什么例子
代码人写下的程序表达一个 Python 文件、一组 JavaScript 文件
程序可以执行的一组指令图片查看器、计算脚本
软件面向用户的完整功能集合编辑器、浏览器、播放器
服务持续运行并等待请求的程序网站服务、数据库服务

这些词在实际交流中有时会互相替代,但它们关注的角度不同。理解这个区别,后面看到“启动服务”“安装依赖”“部署程序”时会更容易定位它们分别在说什么。

6. 编程和后面的学习怎样接上

网络章节会讲数据怎样在设备之间传递;浏览器章节会讲网页怎样被呈现;命令行章节会讲怎样直接启动程序、查看结果和管理环境;本地与远程章节会讲程序究竟在哪台计算机上运行。

它们其实都在继续追问同一个问题:代码写出来之后,谁来执行它,执行时需要什么,结果又交给谁?

这一章不要求你现在就选定一门语言。先知道程序、代码、运行环境和服务之间的关系,之后无论学习 Python、JavaScript,还是使用 AI 编程工具,都有一个可以落脚的框架。

本章小结

  • 程序是一组可以被计算机执行的指令,软件通常是程序、资源、配置和数据的完整集合。
  • 编程是把目标、规则和处理步骤写成精确的程序表达。
  • 编程语言让人能够描述数据、步骤和关系,再由工具交给计算机执行。
  • 代码不等于正在运行的程序;它还需要解释器、编译器、依赖和其他运行环境。
  • 服务是持续运行、等待请求的程序,网站和数据库都可以通过服务向其他设备提供能力。
LEARNING PATH

沿着这条路径继续

每一篇文章都是下一次理解的起点。

上一步第三章 软件的安装与运行
当前阅读第四章 程序与编程计算机入门
下一步第五章 网络与设备连接