Modules are simply a collection of Elements; they are intended to be used as a means of speeding up development.
Use them to build out a variety of designed components faster - for example, a site may have 3 styles of accordions, 2 types of carousel and 5 designs of cards. Simply duplicate (and name appropriately) a module to create a new version, then use print_module()
to render that new version. This is simpler and faster than using logic to render a particular variant and also helps to avoid merge conflicts when several developers are building using the same component.