Projects are the cornerstone of the Graphical Development Environment. A “project” is a file that keeps track of the various files and libraries that make up a program. It also contains information about compiler and linker options (see Chapter 4, “Building and Running Programs”).
When you build a program, the Development Environment looks at the files referenced in the project, and, depending on their extensions, compiles or links them. Since the Development Environment integrates an editor, compiler, and linker in one environment, you specify only a single command to build a program from a project.
In addition to automating the creation of programs, projects also speed devel-opment time. The Development Environment only recompiles files that have changed since the last time a program was compiled or built. This means if your project has six source files and you edited only one of the files since the project was last built, only that file is recompiled before linking.