|
![](/i/fill.gif) |
On 9/23/2011 8:28, Invisible wrote:
> Last time I used Java, we did a little dance. It went like this:
I agree with every one of these rants.
Now, throw in Eclipse, as well as code that generates java code, which the
IDE doesn't know about.
> "For receiving input, use the InputStream classes. For output, use the
> OutputStream classes."
>
> "For receiving input, use the Reader classes. For output, use the Writer
> classes. The InputStream and OutputStream classes are now formally
> deprecated. (Even though System.in, System.out and System.err mention them
> explicitly.)"
And now there's a third set, NIO, or "New I/O". I wonder what they'll call
the fourth set.
> "We will never deprecate the AWT."
> "The AWT is now deprecated. Please use Swing in new applications."
Yeah, I remember that one.
> "For structuring complex applications, use the ApplicationFactory class."
>
> "The ApplicationFactory class is now deprecated. Please use
> ApplicationCenter for new."
>
> "The ApplicationCenter class is now deprecated. The ApplicationFactory class
> has been formally UNdeprecated. Please use ApplicationFactory for new
> applications."
Oh, wait until you use some "dependency injection". Then you'll have *no*
idea how your code is structured. You not only get the indirection of
factories making other factories, but the factories you're depending on
aren't even compiled at the same time as everything else. Good luck figuring
out what you're trying to instantiate.
> documentation helpfully fails to say. (E.g., "start() - starts the widget."
> Yeah, thanks for that. I gathered.)
Yep, yep. Altho MS has been starting to do that sort of crap lately too,
I've noticed. The first release of Java had identical documentation for
StreamReader and StreamWriter, because they did the cut-and-paste and forgot
to change "read" to "write" everywhere.
> I love the way that with the JDK, compiling a class compiles every class it
> depends on, but declaring two mutually-dependent classes is enough to break
> the compiler. I wonder if they fixed that yet?
Nope.
> I love how we have System.err (because System.error would be far too
> verbose), and yet we have java.lang.ArrayIndexOutOfBoundsException. Because,
> say, java.language.exception.ArrayIndex would be too hard?
I did some code yesterday where I had to break one type name over multiple
lines to keep within the 80-character line limit standard. It doesn't help
when you have stuff like
FastPersistentLinearCollection<OrganizationIndividualRelationshipEntity>
I kid you not.
--
Darren New, San Diego CA, USA (PST)
How come I never get only one kudo?
Post a reply to this message
|
![](/i/fill.gif) |