CodeGym /Java-Kurse /Modul 1: Java Syntax /Compiler und Bytecode

Compiler und Bytecode

Modul 1: Java Syntax
Level 1 , Lektion 1
Verfügbar

1. Java ist die beliebteste Programmiersprache

Wussten Sie, dass Java die beliebteste Programmiersprache der Welt ist?

Laut TIOBE-Ranking wird die Programmiersprache Java von mehr als 17 % aller Programmierer weltweit verwendet. C liegt mit 16 % an zweiter Stelle . Vor 20 Jahren, als die Java-Sprache gerade erst auf den Markt kam, war C++ der unangefochtene Spitzenreiter, heute beträgt sein Anteil weniger als 7 %.

Java erschien Mitte der 1990er Jahre und gewann schnell an Popularität. Programmierer sind zu Tausenden von C++ auf Java umgestiegen. Was nur noch einmal bestätigt, dass Java eine sehr coole Programmiersprache ist .

Was ist denn daran so cool? Welche Funktionen haben ihm seine Entwickler gegeben?

Sie werden sehr überrascht sein, wenn Sie Java und C++ vergleichen: Java ähnelt stark einem stark beschnittenen C++!

Ja, die Java-Sprache ist bis zu einem gewissen Grad ein stark abgespecktes C++ . Wenn Sie mit C++ etwas auf 20 Arten tun können, können Sie es mit Java nur auf eine Art tun . Was ist hier also der Vorteil, fragen Sie?

Nun, die heutigen Programme sind sehr umfangreich, Programmierer verbringen oft bis zu 90 % ihrer Zeit damit, den von anderen Leuten geschriebenen Code zu verstehen. Und nur 10 % werden für das Schreiben von neuem Code ausgegeben. Also ja, Einfachheit ist ein Vorteil.


2. Java-Compiler

Übrigens werden Sie mehr als einmal hören, dass der unübertroffene Vorteil von Java seine Plattformunabhängigkeit ist . Was ist das und wofür ist es, fragen Sie? Fangen wir von vorne an.

Ein Computer kann nur die einfachsten Befehle ausführen.

Beim Training von Hunden verwenden wir Befehle wie „Bei Fuß“, „Schütteln“ usw., um einen Hund dazu zu bringen, etwas zu tun, was wir von ihm erwarten. Bei Computern spielen Zahlen die Rolle solcher Befehle: Jeder Befehl ist durch eine bestimmte Zahl kodiert (man nennt ihn auch Maschinencode) .

Aber es ist wirklich schwierig, ein Programm nur mit Zahlen zu schreiben, also haben die Leute Programmiersprachen und Compiler erfunden . Eine Programmiersprache kann sowohl von Menschen als auch von Compilern verstanden werden. Ein Compiler ist ein spezielles Programm, das ein in einer Programmiersprache geschriebenes Programm in eine Reihe von Maschinencodes umwandelt.

Ein Programmierer schreibt normalerweise ein Programm in einer Programmiersprache und führt dann einen Compiler aus, der die vom Programmierer geschriebenen Programmcodedateien in eine einzige Datei mit Maschinencode umwandelt – das endgültige (kompilierte) Programm.

  • Programm in C++
  • Compiler
  • Ein Programm, das aus Maschinencode besteht
Kompilierungsphasen für die Sprache C++

Das resultierende Programm kann vom Computer sofort ausgeführt werden. Die schlechte Nachricht ist, dass der Code des endgültigen Programms stark vom Prozessor und dem Betriebssystem abhängt. Das bedeutet, dass ein für Windows kompiliertes Programm auf einem Android-Smartphone nicht funktioniert.

Wenn Sie ein Programm für Android schreiben , dann läuft es nicht auf dem Windows- Betriebssystem!

Java verwendet jedoch einen viel innovativeren Ansatz.

  • Programm in Java
  • Java-Compiler
  • Ein Programm, das aus speziellen unabhängigen Codes (Bytecode) besteht
  • Java-VM
  • Ein Programm, das aus Maschinencode besteht
Kompilierungsphasen für die Java-Sprache

Ein Java-Compiler kompiliert nicht alle Klassen in einem Maschinencodeprogramm. Stattdessen kompiliert es jede Klasse unabhängig und noch dazu nicht in Maschinencode, sondern in einen speziellen Zwischencode (Bytecode). Der Bytecode wird beim Start des Programms in Maschinencode kompiliert.

Wer kompiliert also das Programm in Maschinencode, wenn es ausgeführt wird?

Dafür gibt es ein spezielles Programm namens Java Virtual Machine (JVM). Zuerst wird es gestartet und dann das Programm, das aus Bytecode besteht. Anschließend kompiliert die JVM den Bytecode in Maschinencode, bevor das Programm ausgeführt wird.

Es ist ein sehr wirkungsvoller Ansatz und einer der Gründe für die völlige Dominanz von Java.


3. Bereiche, in denen Java dominiert

Die oben beschriebenen Vorteile ermöglichen die Ausführung von in Java geschriebenen Programmen auf nahezu jedem Gerät – Computer, Smartphones, Geldautomaten, Toaster und Kreditkarten.

Dieser Ansatz hat viele Vorteile . Aus diesem Grund werden Android- Programme auch in Java geschrieben . Dank des schnellen Wachstums der Mobiltelefonindustrie dominiert Java die folgenden Programmierbereiche:

  1. Unternehmen : schwere serverorientierte Anwendungen für Banken, Unternehmen, Investmentfonds usw.
  2. Mobil : mobile Entwicklung (Smartphones, Tablets) dank Android.
  3. Web : PHP ist führend, aber Java hat einen soliden Marktanteil erobert.
  4. Big Data : verteiltes Rechnen in Clustern bestehend aus Tausenden von Servern.
  5. Smart Devices : Programme für Smart Homes, elektronische Geräte, IoT-Kühlschränke usw.

Java ist nicht nur eine Sprache, sondern ein ganzes Ökosystem: Millionen vorgefertigter Module, die Sie in Ihrem Programm verwenden können. Tausende Online-Communities und Message Boards, in denen Sie Hilfe oder Rat erhalten können.

Je mehr Sie Programme in Java schreiben, desto mehr Antworten finden Sie auf die Frage „Warum Java?“. .

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION