We live in a component-based world. And complex components are based on simple once. This implies the need to express dependencies between them. Most existing methods have notable disadvantages, hardcode, refactoring complexity, large amount of manual work and so on. And there's a way to get rid of all these issues.