- Organize objects with a tree structure.
- Provide uniform [[Interface]] on every node, making it easier to use. -> Transparency
- We may lose a bit of safety because there may be some inappropriate or meaningless methods for some nodes.
- We can have different interfaces for different types of nodes, but that forces us to check the type of a node before using it.
- It is a design tradeoff to choose between transparency or safety.