Code Smell 45 - Not Polymorphic

Subscribe to my newsletter and never miss my upcoming articles

Methods should be interchangeable if they do the same.

Problems

  • Missed Polymorphism

  • Coupling

  • IFs / Type check Polluting.

  • Names coupled to types.

Solutions

  1. Rename methods after what they do.

  2. Favor polymorphism.

Sample Code

Wrong

Detection

This is a semantic mistake. We could add a warning for similar method names on Polymorphic classes.

Tags

  • Polymorphic

Conclusion

Naming is very important. We need to name after concepts and not after accidental types.

Relations

More info


If you have three pet dogs, give them names. If you have 10,000 head of cattle, don't bother. Nowadays, the idea of giving a name to every file on your computer is ridiculous.

David Gelernter



This article is part of the CodeSmell Series.

Comments (1)

Chris Bongers's photo

This is such an important one, and honestly, I got this wrong some times, you want to name something correctly, but forget you already in a class or whatnot.

Thanks for the write-up!