Code Smell 47 — Diagrams
Diagrams are not code. They cannot be a code smell. They are just Diagram Smells.
- Trash code
- Code Duplication
- Diagrams focus only on structure (accidental) and not behavior (essential).
- Use diagrams only to communicate ideas with other humans.
- Program on your favorite IDE.
- Thrash all diagrams. Even the ones generated from the source code.
- Trust your tests. They are alive and well maintained.
- Use Domain Driven Design technique.
We can remove all code annotations and forbid them by policy.
Designing is a contact sport. We need to prototype and learn from our running models.
Papers and JPGs don’t run. They live in the utopic world where everything works smoothly.
CASE was a very hot trend back in the 90s. No good system was developed with these tools.
Code Smell 25 — Pattern Abusers
Patterns are awesome. With great powers comes great responsibility
Code Smell 01 — Anemic Models
Your objects are a bunch of public attributes without behavior.
Laziness II: Code Wizards
Code generators do our hard work. But we don’t need them anymore.
Computer-aided software engineering
Computer-aided software engineering ( CASE) is the domain of software tools used to design and implement applications…
The Diagram is Not the Model. The model is not the diagram. It is an abstraction, a set of concepts and relationships between them.
This article is part of the CodeSmell Series.