Java wurde 1991 geboren und hat sich mittlerweile zu einer der am weitesten verbreiteten Programmiersprachen der Welt entwickelt. Im heutigen Artikel werden wir gemeinsam die sieben wichtigsten neuen Funktionen von Java verstehen und gespannt sein, wie es weiterhin eine zentrale Rolle in den Zukunftsfeldern Supercomputing, Big Data und Internet der Dinge spielen wird.
Java. Als Programmierwerkzeug, das mit dem World Wide Web groß geworden ist, kann kaum eine andere Sprache Webanwendungen von Anfang bis Ende definieren. Seit ihrer Geburt im Jahr 1991 bei Sun Microsystems (heute von Oracle übernommen) hat sich die von James Gosling, Mike Sheridan und Patrick Naughton gemeinsam entwickelte Java-Sprache zu einer Kernkomponente vieler Anwendungslösungen auf Unternehmensebene entwickelt. Kann Java nach fast 25 Jahren der Entwicklung und Weiterentwicklung weiterhin einen Platz in unseren zukünftigen Entwicklungsplänen einnehmen?
Der Hauptvorteil von Java ist sein WORA: Einmal schreiben und überall ausführen. Einfach ausgedrückt bedeutet dies, dass ein Entwicklungsteam eine Anwendung in Java schreiben, sie in eine ausführbare Form kompilieren und sie dann auf jeder Plattform ausführen kann, die Java unterstützt. Dies kann natürlich die tatsächliche Effizienz der Programmierarbeit erheblich verbessern, aber um eine solche Effizienz zu erreichen, müssen wir einen kleinen Preis zahlen.
Einer der größten Kosten hierfür sind die Einschränkungen, mit denen WORA beim Zugriff auf Low-Level-Maschinenhardware arbeiten muss. Universelle Kompatibilität erfordert die Unterstützung abstrakter Mechanismen, die einen gewissen Einfluss auf die Anwendungsleistung haben. Gerade wegen der gewissen Lücke zwischen Java und Hardware dient C++ weiterhin als eine der Hauptentwicklungssprachen und arbeitet oft in Verbindung mit Java. Aber das ist nur ein Ausdruck der Kosten. Andere höhere Kosten könnten sogar die zukünftige Entwicklung von Java behindern.
Java-Anwendungen werden normalerweise in Browserfenstern ausgeführt. Die Vertrautheit mit der Browseroberfläche ist einer der Hauptgründe, warum viele Unternehmensentwickler bereit sind, Java zum Erstellen von Anwendungen zu verwenden. Das Problem besteht jedoch darin, dass Java über eine Plug-in-Architektur mit dem Browser verbunden ist und ein integraler Bestandteil davon wird, diese Architektur jedoch nach und nach verschwindet. Der neue Microsoft Edge-Browser erlaubt keine Verwendung von Plug-Ins. Der Chrome-Browser weist derzeit auch viele Einschränkungen für Plug-Ins auf. Andere Browser scheinen denselben Weg zu verfolgen. Bedeutet das also, dass Java allmählich aus unserem Blickfeld verschwindet?
Nein, Java wird hier nicht enden. Java-Anwendungen werden weiterhin unabhängig und einzigartig funktionieren. Das Vorhandensein einer großen Menge vorhandener Java-Codes bedeutet, dass kostenbewusste Entwickler (und Entwicklungsmanager) Java auch in Zukunft weiterhin verwenden werden. Welche Fakten müssen wir vor diesem Hintergrund über Java wissen?
Die Softwareentwicklung und die Programmiersprachen selbst entwickeln sich ständig weiter. Natürlich ist auch Java im Laufe der Jahre an dieser fortlaufenden Entwicklung beteiligt. Werfen wir einen Blick auf einige wichtige Punkte im Zusammenhang mit Java und sehen wir, wie sich seine Entwicklungsrichtung auf unsere zukünftige Entwicklung auswirken wird.
Natürlich noch eine letzte Sache. Wenn Sie in Java programmieren oder Ideen zu den Entwicklungsaussichten haben, teilen Sie uns diese bitte im Kommentarfeld mit. Vielen Dank für Ihre Teilnahme :)
Java ist nicht mehr auf den Browser beschränkt
Die historische Rolle von Java, hauptsächlich als browserbasierte Anwendungsentwicklungssprache, hat sich verschoben. Nach dem Eintritt in die Windows 10-Ära läuten wir den neuen Edge-Browser ein und verabschieden uns hier komplett von Java – denn dieser neue Browser unterstützt den Plug-in-Mechanismus nicht mehr.
Jetzt verrate ich Ihnen ein kleines Geheimnis: Wenn Sie aus irgendeinem Grund weiterhin browserbasierte Java-Anwendungen verwenden müssen, ist das absolut in Ordnung. Windows 10 bietet auch den IE 11-Browser. Diese traditionelle Browserlösung begrüßt gerne verschiedene Plug-in-Lösungen, einschließlich Java. Das bedeutet zwar auch, dass jeder noch auf die durch Plug-ins verursachten Sicherheitsprobleme achten muss, aber zumindest haben wir noch eine Wahl.
Aber mit Blick auf die Zukunft sollte jeder planen, seine Java-Anwendungen schrittweise auf Desktop-Plattformen zu übertragen. Sie werden hier einen neuen Entwicklungsraum eröffnen und Benutzer werden sich schrittweise an die reibungslose Zusammenarbeit mit Java-Anwendungen außerhalb des Browserfensters gewöhnen.
JavaScript wird immer existieren
Java und JavaScript sind zwei völlig verschiedene Dinge: Java ist eine kompilierte Programmiersprache, die von Sun Microsystems entwickelt wurde, während JavaScript von Netscape entwickelt wurde. Die interpretierte Skriptsprache des Unternehmens . Java-Anwendungen können im Browser ausgeführt werden (mittels Plug-in-Architektur) und können auch als eigenständige Programme existieren. JavaScript hingegen muss im Browserfenster basieren – es kann nicht eigenständig ausgeführt werden.
Mit Blick auf die Zukunft wird JavaScript weiterhin eine wichtige Position in der Browserführerschaft behalten. Es arbeitet Hand in Hand mit HTML 5, um Benutzern ein umfassendes interaktives Browser-Erlebnis zu bieten. Wenn Sie ein Entwickler mit umfangreicher Erfahrung in der Verwendung von JavaScript sind, sind Ihre Aussichten ziemlich gut.
Wenn Sie Entwicklungsmanager sind, ist es auch ratsam, in Ihrer Planung HTML 5 und JavaScript für die Anwendungsentwicklung zu verwenden. Die Kombination aus beidem kann eine ideale Unterstützung für Unternehmens-Web- und mobile Webanwendungen bieten, um den tatsächlichen Anforderungen über einen langen Zeitraum hinweg gerecht zu werden.
Verschiedene Komponenten im Java-Lager nähern sich allmählich an
Oracle entwickelt weiterhin Java-Projekte und plant die Einführung der Java 9-Version im Jahr 2016. Das große Ganze besteht darin, das Jigsaw-Projekt offiziell an Entwickler auszuliefern und Java modularer zu machen. Dies bedeutet, dass uns eine Vielzahl von „Plug-in-and-Take-Effect“-Architekturen zur Auswahl stehen, wodurch das traditionelle Programmiermodell von Java weiter erweitert wird.
Entwickler haben eine Reihe von Entwicklungszielen für das Jigsaw-Projekt festgelegt, die wir in zwei Kategorien zusammenfassen können: Leistung und Skalierbarkeit. Das Aufkommen von Modulen kann die Struktur weiter vereinfachen, und im Allgemeinen bedeutet die optimierte Struktur eine geringere Codegröße und eine schnellere Ausführungsgeschwindigkeit. Die Möglichkeit, Module einfach in eine Gesamtanwendung hinein und aus ihr heraus zu verschieben, ermöglicht die reibungslose Ausführung von Java-Code auf einer Vielzahl von Plattformen aller Größen, von riesigen Engineering-Workstations bis hin zu winzigen eingebetteten IoT-Prozessoren.
Java wird zur Brutstätte des Internets der Dinge
Bei seiner Entstehung war Java ursprünglich eine Programmiersprache für Anwendungen auf Geräten, die wir heute als Internet der Dinge bezeichnen. Die frühen Entwickler der Sprache wollten eine Programmiersprache für mit dem Internet verbundene Fernseher entwickeln. Das Problem besteht jedoch darin, dass eingebettete Prozessoren im Jahr 1991 einfach nicht sowohl das Java-Framework als auch seine Anwendungen unterstützen konnten. Heute hat sich die Situation völlig verändert.
Java Platform, Micro Edition (kurz JPME) ist eine von Oracle entwickelte Lösung für eingebettete und mobile Plattformen und richtet sich auch an spezielle Plattformen wie Fernseher und Medienzentren. Im Bereich des Internets der Dinge hat das Prinzip „Einmal schreiben, überall anwenden“ zu erheblichen Kosteneinsparungen geführt. Erwähnenswert ist außerdem, dass Unternehmen damit Entwickler anleiten können, kommerzielle Java-Programmierergebnisse zu erstellen und diese IoT-Aufgaben zuzuordnen.
Durch die Kombination der oben genannten Fähigkeiten wird die Java-Sprache zu einem unverzichtbaren Bestandteil einer erfolgreichen IoT-Entwicklungsstrategie auf Unternehmensebene.
Java dringt in den mobilen Bereich vor
Die Java-Plattform, Micro Edition, die es Java ermöglicht, seine Leistungsfähigkeit im Internet der Dinge unter Beweis zu stellen, kann auch eine wichtige Rolle bei der Entwicklung mobiler Anwendungen spielen. Es muss betont werden, dass Java im iOS-Bereich einem enormen Wettbewerbsdruck ausgesetzt ist. Die Swift-Sprache von Apple ist zur bevorzugten Programmierumgebung für Entwickler geworden, die ihre Apps in die App-Store-Regale bringen möchten. Wenn Ihr Hauptzielmarkt jedoch Android ist, ist Java immer noch ein äußerst leistungsstarkes Entwicklungstool und kann uns auch ideale plattformübergreifende Funktionen bieten.
Java kann Supercomputer-Geräte unterstützen
Wenn wir an Programmiersprachen denken, die für Hochleistungsrechnen (kurz HPC) geeignet sind, fällt uns als Erstes ein, dass es fast unmöglich ist, Java zu sein . Die Realität ist jedoch, dass eine beträchtliche Anzahl von Hochleistungsrechnerprojekten auf der Welt Java verwenden, um die ihnen zugrunde liegenden Aufgaben der Flüssigkeitsanalyse (oder astronomischen Beobachtung) zu erledigen. Die Infrastruktur von Java scheint möglicherweise nicht für Hochleistungsrechnen geeignet zu sein, verfügt jedoch über eine Vielzahl von Funktionen, die dafür sorgen, dass Java in Hochleistungsanwendungen seinen Platz findet.
Eine wichtige Hochleistungs-Computing-Funktion in Java ist die native Unterstützung für Multithread-Ausführungsmechanismen. Ein weiterer wichtiger Punkt ist, dass Java Entwicklern das einfache Schreiben von Netzwerkanwendungen ermöglicht. Obwohl die Nachteile der Schwierigkeit von Java bei der Verwendung von Mehrkernprozessoren die oben genannten Vorteile bis zu einem gewissen Grad ausgleichen, sind wissenschaftliche Projekte mit bestimmten speziellen Zielen für Hochleistungsrechnen immer noch bereit, Java als wichtigen Teil davon zu verwenden.
Ja, Java wird C++ im Bereich des Hochleistungsrechnens wahrscheinlich nicht vollständig ersetzen, aber es ist auf jeden Fall dynamischer als das bereits veraltete FORTRAN. Wenn Ihr Programmierteam aus vielen Neulingen besteht, die gerade ihren Abschluss gemacht haben und mit Java-Entwicklungskenntnissen vertraut sind, dann ist es definitiv die Programmiersprache erster Wahl, die Sie nicht verpassen dürfen.
Java, ein dunkles Pferd im Bereich der Big-Data-Technologie
Moment, kann Java im Bereich Big Data einen Unterschied machen? Ja, das stimmt, denn es kann die leistungsstärksten Big-Data-Komponenten mit einem modernen High-Performance-Computing-System (HPC) als Kern kombinieren. Erst letztes Jahr demonstrierte IBM ein experimentelles Projekt, bei dem eine Hadoop-Instanz auf einem System lief, das mit Tesla-Grafikprozessoren oder GPUs aufgebaut war. Dabei handelt es sich um eine äußerst leistungsstarke Kombination, mit der auch die komplexesten Aufgaben der Datensatzanalyse problemlos bewältigt werden können.
GPUs sind heute für die meisten der schnellsten Supercomputing-Geräte zu einer unverzichtbaren Prozessoroption geworden. Und die „Write Once, Run Anywhere“-Architektur von Java bedeutet, dass technische Teams ihre eigene Software auf Workstations entwickeln und sie dann auf diese leistungsstarken Systeme portieren können. Wenn diese Systeme mit Big-Data-Datenbankverwaltungstools wie Hadoop betrieben werden, sind die Ergebnisse absolut beeindruckend.