Der Oberbayer vom Ammersee ( Mechtersheimer ) mischt mit JAVA das Internet auf

29/08/2012 - 09:27 von Capitain | Report spam
Basisdaten
Paradigmen: Objektorientierte Programmiersprache
Erscheinungsjahr: 1995
Entwickler: Sun Microsystems (seit 2010 Tochterunternehmen von Oracle)
Aktuelle Version: 7.0.6[2] (14. August 2012[3])
Typisierung: stark, statisch
Einflüsse: C++, Smalltalk, Objective-C, C#
Beeinflusste: Groovy, Clojure, C#, Scala, Vala
Betriebssystem: plattformunabhàngig
Lizenz: GNU General Public License/Java Community Process

Der Entwurf der Programmiersprache Java strebte hauptsàchlich 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.
Einfachheit
Java ist im Vergleich zu anderen objektorientierten Programmiersprachen wie C++ oder C# einfach, da es einen reduzierten Sprachumfang besitzt und beispielsweise Operatorüberladung und Mehrfachvererbung nicht unterstützt.
Objektorientierung
Java gehört zu den objektorientierten Programmiersprachen.
Verteilt
Javas Klassenbibliothek bietet eine Reihe einfacher Möglichkeiten für Netzwerkkommunikation, von TCP/IP-Protokollen über Remote Method Invocation bis zu Webservices.
Vertrautheit
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.
Robustheit
Viele der Designentscheidungen bei der Definition von Java reduzieren die Wahrscheinlichkeit ungewollter Systemfehler; zu nennen sind die starke Typisierung, Garbage Collection, Ausnahmebehandlung sowie Verzicht auf Zeigerarithmetik.
Sicherheit
Dafür stehen Konzepte wie der Class-Loader, der die sichere Zuführung von Klasseninformationen zur Java Virtual Machine steuert, und Security-Manager, die sicherstellen, dass nur Zugriff auf Programmobjekte erlaubt wird, für die entsprechende Rechte vorhanden sind.
Architekturneutralitàt
Java wurde so entwickelt, dass dieselbe Version eines Programms prinzipiell auf einer beliebigen Computerhardware làuft, unabhàngig von ihrem Prozessor oder anderen Hardwarebestandteilen.
Portabilitàt
Zusàtzlich zur Architekturneutralitàt ist Java 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 für die Klassenbibliothek, die beispielsweise unabhàngig vom Betriebssystem dasselbe GUI erzeugen kann.
Leistungsfàhigkeit
Java ist insbesondere auf Grund der dynamischen Optimierungen der Virtual Machine eine der effizientesten Programmiersprachen und liefert àhnliche Geschwindigkeiten wie C++- oder C#-Programme.[7][8]
Interpretierbarkeit
Java wird in maschinenunabhàngigen Bytecode kompiliert, dieser wiederum kann auf der Zielplattform interpretiert werden. Die Java Virtual Machine der Firma Oracle (früher Sun) interpretiert Java-Bytecode, bevor sie ihn aus Performancegründen kompiliert und optimiert.
Parallelisierbarkeit
Java unterstützt Multithreading, also den parallelen Ablauf von eigenstàndigen Programmabschnitten. Dazu bietet die Sprache selbst die Keywords synchronized und volatile – Konstrukte, die das „Monitor & Condition Variable Paradigma“ von C. A. R. Hoare[9] unterstützen. Die Klassenbibliothek enthàlt weitere Unterstützungen für parallele Programmierung mit Threads. Moderne JVMs bilden einen Java-Thread auf Betriebssystem-Threads ab und profitieren somit von Prozessoren mit mehreren Rechenkernen.
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.
 

Lesen sie die antworten

#1 ...........
30/08/2012 - 06:02 | Warnen spam
Capitain schrieb in
news::




Erzaehl doch mal deinen Bloedsinn woanders. Hier interessiert er niemanden.



Such dir Menschen aus deiner Umgebung welche dich beachten.

Ähnliche fragen