Link to home
Start Free TrialLog in
Avatar of RockyFullen
RockyFullen

asked on

Java versus VB

Hi,
  I am writing an application in java using web based GUI (using servlet tech).
  I am about to have to justify this versus an application writen in visual basic.

  Please list some Strength/Weaknesses comparisons of the two.
  Again this is to justify the java method.

Thanks
ASKER CERTIFIED SOLUTION
Avatar of colr__
colr__

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of colr__
colr__

vb code will only run on Windows, where as java is (theoretically) universal.

vb will however produce native machine code, which will run slightly faster than the java bytecode (although remember, will only run on windows machines.

vb cannot be web integrated (unless your talking vb.net).

colr__
Also, another important point - visual basic will soon become end of life, in favor of the newer vb.net framework, where as java has still got a long way to go (in my opinion).

colr__
Avatar of RockyFullen

ASKER

So,
My system is t.o be deployed at 4 sites, and to many users at each site.

* In my mind this make java much more easily deployed and maintained.

* Although the machine code may be faster than the jvm, the java
would still run faster if run on an a more powerful server, rather than
someone's desktop PC.

* Since the product will deployed to unix server, it will also be more stable.
 
Am I correct on these points? Please add more.....
* In my mind this make java much more easily deployed and maintained.
 --- Definetaly, as web support for standard visual basic is minimal, if any.

* Although the machine code may be faster than the jvm, the java
would still run faster if run on an a more powerful server, rather than
someone's desktop PC.
 --- In comparisons, native code will usually run faster than that on a JVM, however as server performance increases, the difference becomes negligible. Nowadays, performance of Java is not really an issue.

* Since the product will deployed to unix server, it will also be more stable.
 --- Yes, in that you cant run Visual Basic on a Unix server.

colr__
SOLUTION
Avatar of Mayank S
Mayank S
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hardly nonsense. For me to give a significant list with one questionable answer, I think your being at bit harsh.

I am not a Microsoft expert, but I know for sure that native code runs faster than virtual machine code. How could it possibly not do when the vm runs on native code itself? with a level of abstraction you're always going to have (however so small) performance issues. What about compiler optimisaton you say? Again, if it can be done by the jvm it can be done (possibly better, but never worse) in native, sicne at the end of the day all that you run is native code.

Im not spitting out what Ive read elswhere either (thanks for that accusation) - although I havent directly compared the 2 myself, I have enough  knowledge of C/C++, java and assembler to tell you flat  that native code will run faster than bytecode. This in itself is obvious if you truly know how computers work and is impossible to change.

If the vb compiler produces slower code than the equivelant on a jvm, then that is a compiler issue, not an issue with native code. But since this post is about vb specifically, yes you're right.

So I stand by my point, with some editing:

"vb will however produce native machine code. Native code will run slightly faster than the java bytecode, although the vb compiler doesnt seem to take advantage of this."

And lets add another point to the list:

javac = good.
vb compiler = bad.

colr__
Did you ever verify what you say?
VB produces GENERATED native code, well the present JVM does the same.
;JOOP!
What is that supposed to mean !?!?!??

What is generated native code if it isnt native code generated by a compiler?!?!? All compilers generated code in some form or other.

colr__