5 ms·
I always figured that Java folks were - paid per class - sought to reduce the number of executable lines per class to 1.
by smitty1e 7y ago
I always figured that Java folks were
- paid per class
- sought to reduce the number of executable lines per class to 1.
- AmericanChopper 7y agoBut that’s just OOP in general. You can choose a language that defaults to not using OOP-style abstractions, but then people will question why you choose python/node/ruby over a proper language like Go (or whatever else)
- mewpmewp2 7y agoI will be honest and tell them it is because these are more productive and I enjoy being productive
- AmericanChopper 7y agoHow productive you are with any particular tool really depends on what you’re trying to do with it.
- oreally 7y ago> But that’s just OOP in general. Nope, that's OOP taken to extremes rather. Java does that with enforcing things to be classes.
- AmericanChopper 7y agoThe OOP paradigm itself requires rather heavy use of abstraction. You can deviate from those patterns to an extent, you can add more polymorphism if you want to, you can be selective in using some design patterns like DTOs. But most of the complaints I hear about Java would apply equally to most of the C# projects I’ve worked on, because those are just the annoying bits of OOP. I’d agree the Java is a bit more inflexible, but it’s not like the other OOP languages aren’t also full of boilerplate and layer upon layer of abstractions.
- UK-Al05 7y agoTbh that was Alan Kay's vision of object oriented programming. Lots of tiny objects collaborating via messages.
- goatlover 7y agoWas it tiny objects or tiny messages, or both? And I wonder how much of the Smalltalk system was made that way. I think at some point your class needs to handle some complexity that isn't easily broken into smaller classes.
- overgard 7y agoI actually knew a guy that argued that one method per class is ideal. He never quite got that at that point you're really just writing a function with a manual closure (the constructor).