3 ms·
I believe it is because the complexity more or less has to exist, when you remove it from one place(in java's case the base language) you add it in another(in
by stonemetal 15y ago
I believe it is because the complexity more or less has to exist, when you remove it from one place(in java's case the base language) you add it in another(in java's case pattern soup). Just think about how you would solve the problems patterns solve for Java in other languages. In every case that doesn't require pattern soup involves language features Java left out.
- mattgreenrocks 15y agoYou're right in that there's a certain base level of complexity due to the problem being solved. But I think it goes beyond pattern soup, and beyond what's available in the language. It's almost a neurosis specific to the Java ecosystem that every design must be maximally flexible...perhaps to show off how object-oriented the code is? It's like the devs are reluctant to hardcode anything, instead abstracting over every design decision they made. This wishy-washy design is then played up as 'flexibility,' rather than a design failure. Suppose I'm looking for a JSON serialization library. Do I really need to be able to configure the JSON parser used? What percentage of people need to do that? The people with the thorny problems (such as deserializing 100MB of JSON as fast as possible) probably won't be able to use it due to the scope of their problem. But, the option is there, as it could happen. I haven't done Java stuff within the past few years, but it would appear they're getting better about it. It seems like it may have taken something like Rails in order to show the world that 'enterprise' is usually a euphemism for 'lacking in taste.'
- seanp2k 15y ago>"But, the option is there, as it could happen." And you know someone is going to use [awful library] to solve [big problem] and it will "work".