Angular Modules declaration
Module is a container for various parts of your applications - controller, services, filters, directive, etc.
Why to use Modules
Most applications have a main method that instantiates and wires together the different parts of the application. Angular apps don't have main method.
But in AngularJS the declarative process is easy to understand and one can package code as reusable modules. Modules can be loaded in any order because modules delay execution.
declare a module
Module Loading and Dependencies
1. Configuration Blocks: get executed during provider and configuration phase.
2. Run Blocks: get executed after the injector is created and are used to start the application.