The Free On-line Dictionary of Computing (30 December 2018):
separate compilation
A feature of most modern programming languages
that allows each program module to be compiled on its own to
produce an object file which the linker can later combine
with other object files and libraries to produce the final
executable. Separate compilation avoids processing all the
source code every time the program is built, thus saving
development time. The object files are designed to require
minimal processing at link time. They can also be collected
together into libraries and distributed commercially without
giving away source code (though they can be disassembled).
Examples of the output of separate compilation are C object
files (extension ".o") and Java ".class" files.
(2005-02-19)