Many software projects produce large, complex programs. Because of this, it is often useful to break programs down into smaller tasks called modules.
Using modules allows smaller chunks of code to be written and tested separately from the rest.
Each module should be as independent from other modules as possible. That helps to reduce the chances of an error in one module adversely affecting another.
Only when each individual module passes inspection is the program tested as a whole.
Modules that are very independent are said to be 'loosely coupled'. Modules that are dependent on one another are 'tightly coupled'.
When the modules have all been written and checked, the compiler translates each module's source code into machine code.
These machine code versions of modules are called 'object files'.
Modules are written in source code whereas an object file is the machine code translation.
Challenge see if you can find out one extra fact on this topic that we haven't already told you
Click on this link: What is modular programming?