6.2 Class Blueprint
The Class Blueprint is another famous polymetric view that shows the internals of a class. The class is split into 5 layers:
- Initialization layer
- Public interface layer
- Private implementation layer
- Accessor layer
- Attribute layer
Furthermore, there are two types of edges:
- Invocations between methods (shown with blue)
- Accesses from methods to attributes (shown with cyan)
The picture below shows one example of a class that has one constructor, a wide public interface and its internal implementation is split into several small methods that present several layers of indirection. Furthermore, it has many accessors, but only a handful of them are actually used internally; most attributes are accessed directly.
This visualization can be obtain from the contextual menu of a class: Visualize/Class Blueprint.
Class Blueprint can also be shown for multiple classes by simply invoking Visaulize/Blueprint complexity from the class group contextual menu.
For example, in the picture below we see an entire class hierarchy, in which each larger gray rectangle represents a class and the gray edges represent inheritance: