From Joomla! Documentation
This page contains many links to selected documentation concerning Module Development for and . A good place to start is with the Recommending Reading articles below as they provide a good introductory base of knowledge to build on.
Modules are lightweight and flexible extensions used for page rendering. These modules are often “boxes” arranged around a component on a typical page. A well-known example is the login module. Modules are assigned per menu item, so you can decide to show or hide (for example) the login module depending on which page (menu item) the user is currently on. See also: Component, Plugin, Template