Frage:
Was ist der Unterschied zwischen VB und Java?
2006-06-14 12:50:25 UTC
Was ist der Unterschied zwischen VB und Java?
Drei antworten:
Wilford
2006-06-14 13:21:29 UTC
VB ist eine Programmierumgebung, die auf BASIC aufbaut, Java ist eine eigenständige Programmiersprache.
genau_daneben_denken
2006-06-16 08:35:17 UTC
VB ist Microsofts Basic Programmiersprache.



Die gibt es schon seit DOS 2.1 (in Deutschland wurde die Version 1.* nicht verkauft).



Später wurde aus Basic VisualBasic.

Die ersten zaghaften Ansätze waren der Formulargenerator für Wordfür Windows 2.0 etc.

Später versuchte Mircosoft eine "universelle Scriptsprache zu entwickeln um in seiner Officeplatform eine einheitliche graphisch orientierte Programmierumgebung zur Verfügung zu stellen.

Basic mutierte zu VBA (Visual Basic for Applications). VB wurde zu der Zeit parallel weiterentwickelt.



Dieses Modell hatte ziemlich Erfolg und wurde ausgebaut zu VisualBasic, das sich mittlerweilen von einer wirklich einfachen Programmiersprache zu einem Hybrid entwickelt hatte.

Obwohl VB eigentlich nicht objektorientiert ist, sondern immer noch dem veralteten Programmiermodell der Prozeduralen Programmierung folgt, standen mittlerweilen ein komplettes Objektmodell aller Officeapplikationen sowie von Windows selbst zur Verfügung.

Eine einfach zu erlernende Mischung von völlig verschiedenen Programmiermodellen.



Als dann Bill Gates doch noch das fremde Wort Internet gelernt hatte, setzte er seine Lohnsklaven daran ein völlig neues Gerüst zu bauen.

Das .NET (sprich: dotnet) Framework.

Jetzt war VB vollständig objektorientiert und ist mit allen Vorgängerversionen nur noch mit dem Namen verbunden. Dahinter steckt eine ganz andere Philospohie, als hinter allen Vorgängerversionen.

Es gab VB.NET.



Java ist die von SUN Microsystems erfunden Programmiersprache. Man muß das Programm nur in JAVA schreiben und es läuft egal auf welchem Betriebssystem.

Das funktioniert, weil jedes Javaprogramm in einer sogenannten Virtuellen Maschine - der sandbox- läuft.

Dazu muß die für das jeweilige Betriebssystem Javamachine installiert werden (was bei jedem neueren Rechner i.d.R. schon passiert ist).



Der Vorteil liegt auf der Hand:

Egal welches Programm: es läuft in einer sicheren Umgebung, und dort kann das Programm alles tun, was es mag. Die JVM (JavaVirtuellMachine) wird nur Befehle ausführen, die ihr zugestanden werden.

Damit kann man bedenkenlos "fremde" Javaprogramme ausführen: Sie können dem System nicht schaden.



Diese Zwischenschicht dient also zweierlei:

Der vollständige Portabilität (läuft auf egal welcher Kiste, auf egal welchem Betriebssystem)

und der Sicherheit (die JVM kümmert sich darum, das das Programm "brav" bleibt. "Böse" Befehle "versanden" in der "sandbox", daher der Name.



Java ist zudem auch vollständig objektorientiert.



Mittlerweilen kann VB.NET ähnliches leisten, wie Java.

Das liegt aber an dem Framework selbst, das diese Features der Portabilität mit beeinhaltet.

Man kann ein VB.NET Programm ebenso unter egal welchem Unix laufen lassen. Dazu bedarf es nur Mono.

Das VB.NET Programm wird übersetzt in eine besondere Form von Code, der dann wiederum zur Laufzeit ausgeführt wird (auf Unixrechnern in der Regel Mono).



Somit ist VB.NET auf so "portable" wie Java.



Die Unterschiede reduzieren sich also auf

SUN Frei und Kostenlos.

Microsoft unfrei und kostenträchtig.



Tip: Man kann ganz kostenfrei VB.NET Programme schreiben auf Unix. Grins.

(ok. Kriegen wir auf Windows auch hin, aber schmerzhafter...)
Mi T
2006-06-15 09:28:37 UTC
Der wohl größte unterschied ist das Java als pattformunabhängige objektorientierte Programmiersprache konzipiert ist...

Javaprogramme laufen überall wo eine Java Virtual Mashine läuft!



im Gegensatz dazu laufen VB-Programme ausschließlich unter Windows...



im allgemeinen kann man außerdem noch sagen das VB leichter zu erlernen ist und sehr gut geeignet ist um in kurzer Zeit Programme mit graphischer Benutzeroberfläche zu erstellen



Kleiner Nachtrag:

Man muss Java, VB bis Version 3, VB Version 4-6 und VB.NET noch ein kleinwenig unterscheiden (von VBA und so mal ganz abgesehen)

JAVA und VB.NET sind Sprachen die just in time compiliert werden, also zur Laufzeit in nativen Code übersetzt werden von einer Zwischensoftware (VM).

Deshalb sind derartige Programme im allgemeinen geringer Performant als direkt native compilierter Code!

VB bis Version 3 war eine reine Interpretersprache, also somit aus performance Sicht sowieso recht langsam!

VB Version 4 bis 6 wurde native compiliert, allerdings aufgrund verschiedener VB-Eigenheiten wie der Typüberprüfung zur Laufzeit hatte VB code im allgemeinen geringere Performance als z.B. vergleichbarer C Code.


Dieser Inhalt wurde ursprünglich auf Y! Answers veröffentlicht, einer Q&A-Website, die 2021 eingestellt wurde.
Loading...