2 ms·
I think it starts in the language. As a language it is the most bureaucratic one of all. These very deep import paths, the ban on multiple inheritance and the r
by cjfd 6y ago
I think it starts in the language. As a language it is the most bureaucratic one of all. These very deep import paths, the ban on multiple inheritance and the rule that a file can only contain one class all make the language bureaucratic. Programmers willing to put up with that are the more bureaucratically inclined ones and hence one ends up with all of these spurious layers of abstraction, giving every field a getter and a setter and so on.
- xxs 6y ago>As a language it is the most bureaucratic one of all.These very deep import paths... getter/setters Standard java libraries like java.lang, java.util, java.util.concurrect, java.net, java.io, java.nio etc, hardly suffers from that part. This is the language - quite straightforward, hardly any getter/setters - relatively simple hierarchy and so on. Then java.awt and later swing, java.bean came with more getters/setters, deeper hierarchies. Those are defunct now of course. I'd blame it on the idea of having visual UI editors to cause the extra fluff. Then xml, spring and all the friends came. Java got the reputation. Still I'd argue the core java packages don't suffer from deep factory-of-factory jazz. (I avoid most of DI and resent mocks in tests)
- raducu 6y agoJava is quite good in its niche. Java is not a language where you quickly slap some duck tape code. Java is not a language where you use your minimalistic VIM-like editor, it is a great language for quick navigation, great search and making sense of the code with a proper IDE.