Entity Component System

An architecture that separates entity identity, component data, and systems that process matching component sets.