In software development, "build" is used as both a verb and a noun. The verb refers to the build process, or steps, required to create an application. The noun describes a specific version of a program.
Creating an executable software program is often described as "building" an app because of all the steps involved. These steps are collectively known as the "build process," which includes the following:
- Checking source code for syntax errors
- Compiling source code into machine code
- Linking libraries and other resources, such as images and media files, to the app
- Generating a runnable application or executable file
Programmers typically use a software development application, such as an IDE, to automate the build process. Many IDEs include a "Build" or "Build and Run" command that performs all the build steps and outputs an executable application.
Each version of a software program is called a build. Some builds may be internal (not released to the public), while others are official releases. For example, a developer may test and refine several internal builds before releasing a stable build to the public.
Since each build is unique, the build number or ID must also be unique. Some developers append the build ID to the public version, while others display it as a separate value. Many applications, especially smaller ones, do not include a public build number.
The build ID is typically the fourth number (after the third dot) when appended to the public version. Standard software versioning uses the following convention:
For example, app version 18.104.22.16895 can be broken down as:
- 4 - Major version
- 2 - Minor version
- 17 - Patch
- 2895 - Build
NOTE: In some cases, developers release different builds between automatic software updates. For example, a developer may publish a new build after making a minor update, such as fixing a typo. But the update is not significant enough to push out the latest version to all users. Instead, a developer may wait until the next minor version or patch release to notify users of the update.