Dienstag, 15. Dezember 2009

was ist java - und wie starte ich einen java-kurs.

Was ist Java?
Java zählt zu den neuen und höheren Programmiersprachen, welche die objektorientierte Programmierung konsequent unterstützt.
OOP: Prinzipien von OOP (Objekt Orientierte Programmierung) sind Abstraktion, Kapselung, Modularisierung und Hierarchie. Im Gegensatz zur ablauforientierten strukturierten Programmierung (Prozeduren und Funktionen) bilden Objekte und Objekttypen (Klassen) das Gerüst des Systems. Oben erwähnte Objekte besitzen Eigenschaften und eigene Operationen (Methoden). Programmsysteme können ähnlich einem Baukasten aus Objekten zusammengesetzt werden. Objekte stehen miteinander in Verbindung und senden sich gegenseitig Aufträge (Botschaften). Durch das Zusammenspiel aller Objekte, kann eine Gesamtaufgabe gelöst werden.
Dank so genannter Applets, welche Webpages dynamischer machen, gelang Java der Durchbruch - im Internet. Jedoch war es nicht das Ziel der Programmiersprache Java, das WWW dynamischer zu machen. Man mag es kaum glauben, doch man hatte ursprünglich - und hat noch heute - die Idee, Haushaltsgeräte und deren Abläufe zu optimieren und zu automatisieren! So sollte beispielsweise das Radio automatisch anspringen, dadurch der Kaffeebeutel in die Kaffeemaschine gefüllt werden, und schließlich und natürlich der Kaffe gekocht werden sowie die Heizungen im Winter angemacht werden.
Doch in diesem kleinen Einstieg geht es nicht um die Optimierung von Haushaltsgeräten, sondern um Java im Internet. Und genau deshalb geht es jetzt richtig los..
Was sind Vorteile von Java?
Portierbarkeit (Hardware- und Betriebssystem unabhängig), breites Einsatzspektrum (Applets/Internet und Programme/lokal), bekannte Syntax (durch C/C++), Robustheit, Sicherheit, viele Standardfeatures, dynamisch und modular, große Verbreitung...
Auf das Stichwort Portierbarkeit sollte man besonders achten. Sicher ist C++ eine maschinennahe, sehr schnelle und sehr mächtige Programmiersprache und Java hat die Syntax fast komplett übernommen, doch was passiert, wenn man ein Programm in Windows unter C/C++ schreibt? Man kann es nur für das entsprechende System nutzen, was unbestritten ein großer Nachteil gegenüber Java ist

Was sind Nachteile von Java?
Die Geschwindigkeit lässt leider stark zu Wünschen übrig, was sich jedoch mit den Native- und Just-In-Time-Compilern ändern soll. Weiterhin fehlen einige C++ Features. Dies erschwert die Portierung (Beispiel: Operator, variable Argumentenlisten). Leider schränkt der oben genannte Vorteil Sicherheit die Anwendungsgebiete ein. Außerdem können Applets nicht gedruckt werden; wenn doch, dann nur über äußerst komplizierte Umwege.
Syntaxvergleich zwischen C++ und Java
Wie oben bereits erwähnt, hat Java die Syntax von C++ übernommen, jedoch mit folgenden Einschränkungen: keine Zeiger, Funktionen, Structs, Unions, globalen Variablen, Mehrfachvererbung, Preprozessoren, typedefs und Gotos.
Folgende Erweiterungen bietet Java, vorallem verkörpert durch Standardklassen: Benutzeroberflächen, Grafik (2D), Netzwerk, Threads und Bildverarbeitung.
Wie kann das Internet Java verstehen?

Ein Java-Programm besteht aus einer Klasse und wird durch die virtuelle Java-Maschine verstanden. Sie interpretiert den Java-Bytecode ("Maschinensprache" der virtuellen Maschine) und sorgt für Portierbarkeit, Sicherheit und Robustheit. Dieses Interpretieren ist jedoch sehr langsam, was wir oben bereits angedeutet haben. Weiterhin gibt es Miniprogramme, die auch als Applets bezeichnet werden, welche über den Browser abgespielt werden können, und somit das WWW erweitern. Der Code eines solchen Programms wird vom Server geladen - das Programm läuft dann beim Nutzer (Client). Java-Programme können keine Viren enthalten oder Hackerattacken unterliegen, da sie schreibgeschützt sind.
Was benötige ich, um Java nutzen zu können?
Wie auch in der Spieleprogrammierung mit DirectX und dessen SDK (Software Development Kit) gibt es auch für Java ein solches, nämlich das JDK (Java Development Kit). Es wird ständig weiterentwickelt, und stellt für den Programmierer erst die Option zur Verfügung, Java-Programme entwickeln zu können. Das JDK besteht aus einem Compiler (der den Bytecode interpretiert), einer virtuellen Maschine, einem Debugger (der Fehler im Code erkennt), einem Disassembler und anderen Tools. Natürlich gibt es auch sogenannte IDEs (Integrated Development Environments = Entwicklungsumgebungen) für Java wie den JBuilder von Borland oder RealJ.

Keine Kommentare:

Kommentar veröffentlichen

 
Nereides.Rss.Feeds | Delphi lernen, Delphi Kurs