Multi-file module layout
Multi-file layouts typically aim to split the content of a project up into smaller and easier to maintain files. The most common strategy is to create one file for each function, class, or enumeration.
Files are categorized and grouped together to make it easier to find parts of the module. For example, the LocalMachine
module might split up as follows:
ProjectRoot
| -- LocalMachine
| -- public
| | -- Get-ComputerDescription.ps1
| | -- Set-ComputerDescription.ps1
|
| -- private
| | -- GetRegistryParameter.ps1
| | -- TestComputerDescriptionValue.ps1
|
| -- LocalMachine.psd1
| -- LocalMachine.psm1
When split like this, LocalMachine.psm1
needs to change to load the content from those separate files.
Dot sourcing module content
Dot sourcing is used to load the content of a target file into the current scope. If used inside the psm1
file, each individual file will be loaded into...