I was working on TICS code quality metrics for the first time, and I have this question.
Many suggest breaking large functions into one or more functions in order to keep complexity less than 15. Doing so would increase number of functions called by the given function, hence average fan out would be increased.
Should we make the decision to decrease fan out or decrease cyclomatic complexity? Decreasing Cyclomatic complexity would increase maintainability, but splitting functions into 2 or more functions would increase the number of function calls, which would cost most memory.
So which of these two metrics is more important to improve?