Editorials

Java vs. Dot Net – Wrong Question

Java vs. Dot Net – Wrong Question

I really dislike the threads that ask which is better. For example, which is better, Visual Basic.net or C#. There is not real answer. Now I find I have done the very thing I dislike asking which is Mas Macho…Dot Net or Java. Anthony writes in bringing the question down to earth.

Anthony writes:
I state humbly that your question contains a fatal flaw or falacy because it presumes that one is mas macho. So I’ll go for option 3.

In my years of software development, and life in general, I have learned that there is very rarely, if ever, a silver bullet that applies universally over all situations or scenarios; although, there are always flaming passions. What I have always aspired to create is balance and doing what is best for a given project or challenge. Sometimes Java might be better suited; sometimes .Net; sometimes neither. While your open-ended question is great to foster active discussion and debate (which I gather is your end goal) I humbly feel that it is ill-suited (as stated) to be discussed seriously in the hopes of coming up with any meaningful answer unless you provide a scenario as a basis.

Having said that, here are some of my general opinions on the matter:

First, it has been a long time since I used Java seriously. While I presume it is still free it is therefore good for startups or those without much capital. I also recall at the time that it wasn’t entirely cross-platform in that I noticed that guis didn’t always behave the same from platform to platform. Another issue of concern is that .jar files can be hacked easily since one could theoretically unjar a file, replace/add/delete a .class or manifest file and then re-jar. Granted a person would probably have to have some knowledge of the system he hopes to sabotage but I feel it is much more easy to do this than to try to alter executable/machine code and still have it run unnoticed.

As for Dot Net, there are pros/cons here, also. As you mentioned you need a .Net Frramework in order for the code to run, and depending how you manage it your application could feasibly start behaving differently if someone installs a new framework or if two computers have different frameworks installed. Of course, this could either be a feature or a bug. And yes, people do tend to pick one language and stick with it but I suspect that is based on preference and need.

For example, a small business with junior developers may not want to concern themselves about any kind of memory management or doing anything which would be "unsafe" so they may choose VB, especially since it mimicks VBA. Then there are those who may need to do some "unsafe" things such as unions, pointer aritmetic, etc. and may need to use CS especially since the syntax agrees with C++ programming. Of course there is also managed C++ which is yet more technical and can interface with non-CLR native C++ code. Using managed C++ may be overkill for a simple user interface and VB wouldn’t cut it if you needed to interface with C++ libraries or (say) Java to interface with native code.

So que es mas macho? I say just look at the job in front of you, take into account reasonable needs for flexibility and scalability, and do what makes the most sense with the least amount of work.

All that being said, let me see if I can rephrase the question for you in a more useful way. Would anyone care to predict what will be the platform of the future and the language(s) we use to interact with it?

Steven writes:
Back in 1999, when I was looking to get my users out to the Internet, I choose Java. But my managers thought that if we were going to go to a different language other than COBOL running on IBM equipment, it had to be Microsoft. So I eventually went to Classic asp, which was a big improvement over .dlls, and was very happy with the resulting code. I am still using Microsoft .Net version 4.0, but I’m looking for some other language. Do you think switching to Java is the right move?

What do you think? Are you happy were you are and just don’t want to think about it? Is the landscape to crazy to consider any choices today? Leave your thoughts below, or send an Email to btaylor@sswug.org.

Cheers

Ben