Re: Graceful Failure
Posted: Aug 29, 2005 6:23 PM
> Gregg wrote So far, I haven't seen anything mentioned
> that I would declare visual clutter. Perhaps this
> discussion is more about if you haven't been reading a lot
> of Java... code that you might be overwhelmed in the
> senses with some of the language syntax.
> If you have been reading a lot of Java code maybe you have
> become accustomed to living with clutter :-)
> Do you think you'd be more productive with a language that
> provided nullable references and non-nullable references?
No, I don't believe so. I haven't seen a profound impact on my Java software. When I wrote a lot of C software, I used lint religiously to try and ferret out null pointers ASAP. But with Java, and RuntimeExceptions of all types, there is a subtle, but important programming behavior that I have adopted. It has made be actually pay a lot of attention to top level Threads, and important execution paths. I am now much more delibert in my programming style and making very important control loop design decisions.
This means that when runtime exceptions do occur, I don't typically have any issues that the software is not prepared to take an appropriate action for.
There are several Java platform APIs that are not as well prepared. You can loose a thread in a rather catastrophic way in those APIs. So, I've also learned that lesson and adopted wrapper APIs, or other practices that provide the necessary behaviors.
What I spend the most time doing in Java is programming GUI actions. Thats the place where there is so much minutia about matching up disabled components with stateful actions of the user. Managing preference mappings etc.
My http://swingutil.dev.java.net and http://packer.dev.java.net projects contain some of the tools that I use. I'm not needing language features, I need APIs and tools that exploit the features of the language to provide more productive interfaces for me to use.