3 ms·
the author is right of course, but in practice he's wrong. I've been in a 500k loc codebase mostly in python. As things got complicated, instead of the couple
by throwawaygal7 6y ago
the author is right of course, but in practice he's wrong.
I've been in a 500k loc codebase mostly in python. As things got complicated, instead of the couple of arguments seen in his example you need up with half a dozen or more, or variable argument lists, people passing callbacks with callbacks and all sorts of shit like that instead of just writing an object and context manager or two.
In a large codebase these rapidly become very difficult to reason about and are better structured as objects with a discrete set of operations.
- leontrolski 6y ago(Author here) I used to think that, but I've since found myself working on a similar sized codebase where we use very little OO and none of these problems have manifested themselves. Avoiding large function signatures and passing higher order functions around takes a little discipline, but wrapping those things with a bit of OO doesn't make the root problems go away, it just encourages their proliferation. (To reiterate the article, I'm by and large talking application development as opposed to library development).