re: When do you create a function or method? VIEW POST

re: Hi! I am creating functions for small and independent tasks, which do not need a context (eg removing characters from string), and methods (and th...

Great answer.

I have a question. If the method has 4-5 arguments and all can be modified then in which class do you put it? The most important argument?


I would create an abstract class using those arguments as attributes, if they are used in more than 1 function, to have all the data processing in the same place.

Usually, I choose a name related with how I play with those data and not regarding the most important argument.

This would work most of the time but wouldn't that create too many classes if there are many such methods?

It could, but if you can "group" methods playing with the sames arguments (but doing different things with those) it can be pretty efficient in reducing SLOC (physical lines of code) and code complexity (IMO, in some cases creating a function with more than 4-5 arguments is better than creating a class).

To me, the most interesting thing with a class is that it handle its resources on its own, all of them, in the same place.

Yup, that's why they were designed. Data with functionality. Just be careful not to group data with functionalities that don't actually deal with the data as whole but just parts of it. Or even worse, consider functionalities as objects and creating classes based on those. It can lead to so many headaches.

code of conduct - report abuse