NOTE
Class Diagrams
Modeling types, interfaces, responsibilities, associations, inheritance, and composition.
This is a historical learning note and may contain outdated or incomplete understanding.
A class diagram describes static type relationships: classes/interfaces, important fields or operations, associations, inheritance, and composition.
Use it to explain responsibility and dependency structure rather than documenting every getter and private field. Prefer composition when it models the domain better; inheritance is appropriate only when substitutability and shared abstraction are real.