- Organizes entire project
- Splits thinking process (3 thinking hats?)
All logic is done all over place
Model - Data and business logic
Controller - Flow and data control (?)
View - Presentational logic
- Single instance of object/class for entire project
- Similar to superglobals
ex. databases and files allows single connection per resource
Singleton always returns same resource
Email::sendEmail($email, $message);
Log::error($errorString)