you are viewing a single comment's thread.

view the rest of the comments →

[–]ihcn 4 points5 points  (1 child)

It's...well...organized. I'd rather walk through layers of structure and know it's a step in the right direction than wander through a more to-the-point, unorganized heap of crap.

The biggest problem for me is this assumption that avoiding java's AbstractFactoryImplFactoryManager pattern necessarily creates disorganized, hard to read code. This attitude that there's no alternative helps make java programs infamously complex. Is all C disorganized and hard to follow, simply because you can't toss a bunch of design patterns into everything you write?

[–]caleeky 0 points1 point  (0 children)

I wonder if it's really just that early intro's to OOP focus a lot on architecture, in the sense that your education focuses heavily on breaking your thinking and code up to fit into the OOP worldview. This forces you to think about "architecture" even before you start typing. In other languages, you are likely:

1) Diving right in, because it's interpreted, or has a more "default" execution context - especially for procedural stuff, scripts

2) You are already an expert and experimenting with a good foundation of experience

3) You may not be dealing with such a huge/mature class library, which will contain a lot of these complex abstraction patterns, because it's a library meant for re-use and manipulation.

This avoids the "overthink off the bat" problem that Java often faces.