DEV Community

loading...
Cover image for Code Smell 38 - Abstract Names

Code Smell 38 - Abstract Names

Maxi Contieri
Learn something new every day. - I am a senior software engineer working in industry, teaching and writing on software design, SOLID principles, DDD and TDD.
・1 min read

Avoid too abstract names. Names should have real world meaning

Problems

  • Implemental Naming

  • Meaningless names

  • Broken MAPPER and Bijection to real world entities.

Solutions

  1. Choose meaningful names.

  2. Find metaphors.

  3. Avoid words like abstract, base, generic, helper etc.

  4. Use rules for naming.

Sample Code

Wrong

Right

Detection

We can set up policies and rules warning for certain words like base, abstract, helper, manager, object etc.

Tags

  • Naming

Conclusion

Finding names is the last thing we should do on our designs. Unless we have a clear business understanding, good names emerge at the end after defined behavior and protocol boundaries.

Relations

More info

what is in a name

Credits

Photo by Rodion Kutsaev on Unsplash


There are only two hard things in Computer Science: cache invalidation and naming things.

Phil Karlton

Discussion (0)