3 ms·
Well, java tends to be one extreme and python the other. Java appears to be the most bureaucratic language around where most code is written by people who are
by cjfd 7y ago
Well, java tends to be one extreme and python the other.
Java appears to be the most bureaucratic language around where most code is written by people who are just a bit too enthusiastic about OO so every class becomes a FactoryManagerPatternVisitorImplementation and every struct 'of course' needs getters and setters.
Python on the other hand is often written without any safety and I have frequently witnessed how every typo becomes a new variable maybe just because the cat stepped on the backspace key and how one developer changes the signature of a function but not all places where it is called.
I think there are great benefits to compile/lint time type checking for anything bigger than just a throwaway script. For python one can use mypy, which helps. There is no need to, though, to turn everything into a festival of object orientedness. Most classes need neither parent nor child. And some functions can just be global functions.
- pytester 7y agoI think a lot of java's "bureaucracy" is simply duct tape around its badly constructed type system. >Python on the other hand is often written without any safety Oh for sure, but I find it easy to start dialing up python's safety from day one of starting on a project (e.g. start writing asserts), no matter how complicated. Working around java's horrible type system? Less easy.
- marcosdumay 7y agoI'll have to agree with pytester, and say something strongly discouraged by the article... But, well, Java can not be an extreme, its type system is very basic, it can represent very few stuff, so it can not check much. If you want something closer to the extreme, go for Haskell. But then, you can't complain much about bureaucracy. There is an annoying tendency of people to base their opinions on technology directly copied from the 70's.