Personally I think it highly depends what type of learner someone is.
One person is very practical and really learns fast an quickly by doing stuff, others learn by (theoretical) repetition etc
Most important is that there is no good or wrong in it, neither is one more smart or not.
It's just nothing more than just having a preference.
Unfortunately on schools/universities only one kind is being taught and (therefor) only being taken serious.
The fast majority is only done with repetition, and even one of a very limited kind.
This doesn't train peoples brains to understand the problem, but just repeat the solution.
Result; after a month or two people totally forget what everything was about and move on.
Or in other words, people are trained to remember things like (useless) facts, not to understand things and being trained in logical reasoning.
Let alone understanding the meaning of it and seeing how that can be implemented on a wider/bigger scale or bigger picture.
In fact, I have seen multiple people with a cum laude degree as well as a PhD but weren't able to understand not only some basics but also failed in very similar problems but with a different context.
When I am coaching interns, I always let them focus on basically 4 things; statistics, error analyses, control theory and Fermi problems.
With these four plus a little bit of base knowledge and logical thinking you can tackle a lot of problems that or sometimes not even close to your working field.
I really never bother about facts, nowadays there is Google as well as YouTube.
Rather safe time, energy and effort (= hard-disk space in the brain) in understanding things.
For an engineering/scientist tackling new unknown problems is far more important.