Sun Plans VB-Like Tools For Java
CokoBWare writes "Sun apparently is trying to create a more VB-like experience for developer. This article from E-Week explains Sun's strategy in providing more VBesque tools for the Java developer. Can anyone say "Good luck Sun, and all the best"?"
About four years too late, but hey.
Dave
I write a blog now, you should be afraid.
Sure Java can do a nice flexible cross-platform (in theory, anyway) GUI front end, but even setting aside the performance issues of Swing, it generally takes a good bit more time to set up than a comparable VB interface.
Does the world really need Yet Another RAD Tool? I can't speak fully for the Swing/Awt world, but the medium-sized Java projects I've been on was developed with textpad and apache ant.
One of the beautiful things about Java/C++/SmallTalk is that you just can't start coding in it. For most people, it takes time to learn. But when you do learn it, and learn it correctly, you'll start to think in terms of coding for the sake of the interface, instead of coding for the hell of it.
With RAD tools, it's super easy to start coding what's in your head at the time being, making up classes and methods as you go. Why not global variables? You may start out coding for a prototype. This prototype doesn't get redesigned, let alone refactored for the actual implementation ('cause hey, we already have it 50% done). Then the next thing you know, you have bloatware. Then you leave your job, and some poor schmuck has to maintain your 'code'.
I didn't fully understand why you had to do so much in Swing to do so little until I read the GOF Patterns book. Most everything in the Swing API is an abstract pattern of some sort. When you create prototypes in Swing, you can't take a lot of things for granted. You actually have to think things through. And that, you just cannot rapidly do, initially.
But when you do understand the fundamentals, prototypes can be refactored or easily redesigned to fit the implementation. Of course, this means that the software engineer that develops the prototype must have some working knowledge of the API or framework. It means that you just can't have your average "learn XXXX in 24 hours" code monkey start the software process. It means RAD is not a tool, but a way of thinking. I professionally build prototypes for projects using textpad and ant. Much of which can be extended for the actual implementation.