4 ms·
>The moment we would have spent effort to make them distinct functions we would have had to recheck our assumptions, generalize, verify that methods work on the
by RHSeeger 3y ago
>The moment we would have spent effort to make them distinct functions we would have had to recheck our assumptions, generalize, verify that methods work on their own
Why? Why can't the functions say "to be used by <this other function>, makes assumptions based on that function, do not use externally"? Breaking out code into a function so that the place it came from is easier to maintain... does not mandate that the code broken out needs to be "general purpose".
- laserbeam 3y agoSpecifically, in that place, there was no need. And prematurely splitting it would have caused us to overthink and over generalize. Having a long, linear and tested function was a better choice.
- auggierose 3y agoI understand your point, but perhaps that would have simply been an opportunity to refine your approach to code design. If such a situation leads to excessive deliberation and overgeneralisation, your code base must be riddled with unnecessary overthinking and overgeneralisation.
- goatlover 3y agoOr maybe it was just a long, sequential algorithm where breaking it up wouldn't have been an improvement.
- auggierose 3y agoI have been programming for more than 30 years. Except for code generated explicitly to be only consumed by machine, I've never come across a function consisting of 2000 lines of code that should not have been broken up. Something is wrong there, and if you show me the code, I'll tell you what's wrong with it.
- deleted 3y ago[deleted]
- wiseowise 3y agoGlad you can see that without even looking at the code.
- auggierose 3y agoSome things you don't have to see to know whats going on. Function with 2000 lines of code? Have fun rationalising this.