# Software, Program 和 Application 的区别

### 包含关系

Software > Program > App

App 是为用户设计带 UI 的软件。Software 比 Program 包含更多东西。

### Program 和 App 的定义

在技术领域，"program" 和 "app" 这两个术语通常有以下定义：

#### Program（程序）

一个由编程语言编写的软件，包含一系列指令，用于完成特定的任务或解决特定的问题。通常，程序指的是代码本身，而不是最终用户直接与之交互的软件。程序可以是命令行工具、图形用户界面（GUI）应用程序、服务器端软件、嵌入式系统中的代码等。程序需要通过编译或解释来转换成计算机可以执行的格式。

#### App（应用程序）

这个术语通常指的是为终端用户设计的软件，可以直接在计算机、移动设备或其他电子设备上运行。App 通常具有用户界面，可以是图形界面，也可以是命令行界面。App 通常是为特定目的或一组相关任务设计的，比如电子邮件客户端、游戏、办公软件等。在移动设备上，"app" 通常指的是在操作系统上安装并运行的应用程序，如 iOS 或 Android 上的应用程序。

在实际使用中，"program" 和 "app" 有时会互换使用，但它们通常指的是软件的不同方面。例如，当你提到一个 "word processor program" 时，你可能在指代软件的代码或实现，而当你提到一个 "word processor app" 时，你可能在指代用户可以下载和使用的软件产品。
