DEV Community

Discussion on: Code Smell 22 - Helpers

Collapse
 
mcsee profile image
Maxi Contieri • Edited

hi Alain.

Besides rewrite them (most refactorings are about rewrites) solution is less coupled, has a real world name, is more readable and has no static methods.
Length is not a big issue when declarativeness is a trade off.
For me, its is more intention revealing a formatter that formats than a helper that.... hmm helps?

Collapse
 
alainvanhout profile image
Alain Van Hout

That does add more detail, thanks. I personally don't see it as less coupled (use a class vs use a function). As to better names, that's a fact but it would work as well if the functions were renames to e.g. formatToFullName and determineCategory (or something better based on the domain). Static or not seems mostly irrelevant to me, since it doesn't really affect transparency (while I would say that the class boilerplate does reduce transparency).

But a class version of the methods of course also works, so to a degree it's a matter of taste I suppose.

Thread Thread
 
mcsee profile image
Maxi Contieri

indeed. it has some taste on it.

According to SOLID principles Class single responsibility is to create instances. Not to be overloaded with static functions. But it is just an opinion.
As long as we don't call them Helpers I think we are in a better position.