Let's face it, everyone has an opinion about HTML markup especially template designers. Fortunately, changing the output of your module layouts, does not require modifying the original code. A module layout override is possible and preferable, to changing the module layout directly. So let's add and override.
Depending on the needs of the site webmasters may want different ways of displaying the output from your module. This can be accomplished through module layouts. Let's give our webmasters a selection of layouts to choose from.
Module parameters give site administrators a way of configuring your module without digging into PHP code. They also give your module a level of reusability as different model instances can have different settings for the parameters.
While every extension in Joomla has a XML manifest file for installation, but one for components is the most sophisticated. Understanding how this file works and what you can do with it will save you headaches at installation time.