A component is a grouping of related functionality (classes) encapsulated behind a well-defined interface.
Aspects such as how those components are organized (packages, modules, JAR file, DLL, namespaces, shared library, etc) is a separate and orthogonal concern. In the C4 model, components are not separately deployable units.
— Simon Brown, C4 model