A computer is a machine that follows a list of instructions called a program. An Android device is a computer, and an app is a program.

Even the simplest app consists of dozens of files of instructions, plus accompanying resources such as image files. We create these files and resources using a desktop application called Android Studio.

When we're finished, our instructions and resources need to be packaged into a form that our Android device can understand. Android Studio delegates this task to a tool called Gradle. Gradle translates our instructions into a language that's easier for the Android device to understand, and compresses our translated instructions and resources into a file called an APK, or Android package. The APK can then be copied to your Android device and run there.