Tuesday, December 15, 2009

Grundkonzepte der Sprache JAVA

Grundkonzepte der Sprache


Der Entwurf der Programmiersprache Java strebte im Wesentlichen fünf Ziele an:

Sie soll eine einfache objektorientierte, verteilte und vertraute Programmiersprache sein.
Sie soll robust und sicher sein.
Sie soll architekturneutral und portabel sein.
Sie soll sehr leistungsfähig sein.
Sie soll interpretierbar, parallelisierbar und dynamisch sein.
diese Ziele wurden sie erreicht?

Java: Einfach


Java ist im Vergleich zu anderen objektorientierten Programmiersprachen wie C++ der COBOL einfach, da es einen reduzierten Sprachumfang besitzt und beispielsweise Operator Overloading, Pointer, Mehrfachvererbung nicht unterstützt.

Java: Objektorient


Java gehört zu den objektorientierten Programmiersprachen.andere auch

Java: Verteilt


Javas Klassenbibliothek bietet eine Reihe einfacher Möglichkeiten für Netzwerkkommunikation, von TCP/IP-Protokollen über Remote Method Invocation zu Webservices. andere auch

Java: Vertraut


Wegen der syntaktischen Nähe zu C++, der ursprünglichen Ähnlichkeit der Klassenbibliothek zu Smalltalk-Klassenbibliotheken und der Verwendung von Entwurfsmustern in der Klassenbibliothek zeigt Java für den erfahrenen Programmierer keine unerwarteten Effekte. klar, alles abgeschrieben

Java: Robust


Viele der Designentscheidungen bei der Definition von Java reduzieren die Wahrscheinlichkeit ungewollter Systemfehler: Zu nennen sind die starke Typisierung, Garbage Collection, Referenzen statt Pointer, Exception Handling. wie in anderen sprachen auch

Java: Sicher


Dafür stehen Konzepte wie der Code-Verifier, der sicherstellt, dass die JVM keinen ungültigen Bytecode ausführen kann, der Class-Loadern, der die sichere Zuführung von Klasseninformationen zur JVM steuert und Security-Manager, die sicherstellen, dass nur Zugriff auf Programmobjekte erlaubt wird, für die entsprechende Rechte vorhanden sind.

Java: Architekturneutral


Java wurde so entwickelt, dass dieselbe Version eines Programms prinzipiell auf jeder beliebigen Computerhardware läuft, unabhängig von ihrem Prozessor oder anderen Hardwarebestandteilen.

Java: Portabel


Zusätzlich zur Architekturneutralität ist Java auch portabel. Das heißt, dass primitive Datentypen sowohl in ihrer Größe und internen Darstellung als auch in ihrem arithmetischen Verhalten standardisiert sind. Beispielsweise ist ein float immer ein IEEE 754 Float von 32 Bit. Dasselbe gilt auch für die Klassenbibliothek, die beispielsweise unabhängig vom Betriebssystem dasselbe GUI erzeugen kann.

Java: Leistungsfähig


Java ist insbesondere auf Grund der dynamischen Optimierungen der Virtual Machine eine der effizientesten Programmiersprachen und liefert ähnliche Geschwindigkeiten wie C++ oder C# Programme.

Java: Interpretiert


Java ist eine interpretierte Sprache. Die Java Virtual Machine interpretiert Java-Bytecode. Das macht die Ausführung etwas langsamer - aber sicher.

Java: Parallel


Java unterstützt Multithreading, also den parallelen Ablauf von eigenständigen Programmmabschnitten. Dazu bietet die Sprache selbst die Keywords synchronized und volatile – Konstrukte, die das „Monitor & Condition Variable Paradigma“ von C.A.R. Hoare unterstützen. Die Klassenbibliothek enthält weitere Unterstützungen für parallele Programmierung mit Threads.

Java: Dynamisch


Java ist so aufgebaut, dass es sich an dynamisch ändernde Rahmenbedingungen anpassen lässt. Da die Module erst zur Laufzeit gelinkt werden, können beispielsweise Teile der Software (etwa Bibliotheken) neu ausgeliefert werden, ohne die restlichen Programmteile anpassen zu müssen. Interfaces können als Basis für die Kommunikation zwischen zwei Modulen eingesetzt werden, die eigentliche Implementierung kann aber dynamisch und beispielsweise auch während der Laufzeit geändert werden.

No comments:

Post a Comment

 
Blogverzeichnis - Blog Verzeichnis bloggerei.de Blog Suche