Imperative Programmierung

Aus ProgrammingWiki
Archivierte Version vom 2013-08-05T03:53:09+00:00. Aktuelle Version

Inhaltsverzeichnis

Einstieg

Die imperative Programmierung ist eines der ältesten Programmierparadigmen - was nicht bedeutet, dass sie heute ungebräuchlich ist. Ein imperatives Programm ist eine lineare Abfolge von Anweisungen. Ein Beipiel:

Programm: MachWasMitMeinenDateien
1 Datei suchen // Programmbeginn
2 Datei öffnen
3 Etwas in Datei suchen
4 Etwas aus Datei löschen
5 Etwas an Dateiende schreiben
6 Datei schließen // Programmende

Dies scheint recht simpel zu sein? Ist es auch. Programme können natürlich in der Praxis recht komplex werden, doch grundlegend ist es nichts weiter als das. Damit haben Sie das Grundkonzept der imperativen Programmierung verstanden. Hier ist der Kurs allerdings nicht zuende, sondern hat gerade erst begonnen. Ich werde mich bemühen, Ihnen alles in kleinen Häppchen zu servieren, da diese oft leichter verdaulich sind als komplexe Abschnitte. Beginnen wir nun also zunächst mit etwas Java.

Hello World!

Da Sie den grundlegenden konzeptionellen Ansatz nun verstanden haben, wollen wir etwas praktisches nachlegen. Beginnen wir nun ganz klassisch mit einem "Hello World!"-Programm. Klicken Sie hierzu auf "speichern & ausführen".

Der Text "Hello World!" wird in der Konsole angezeigt. Zur Erläuterung: Die Anweisung System.out.println("<mein text>"); ist dafür verantwortlich, Dinge in der Konsole auszugeben. Merken Sie sich diese gut - Sie werden sie des Öfteren verwenden müssen. Wichtig zu erwähnen ist noch das wohl Unscheinbarste - das Semikolon. Einzelanweisungen wie diese enden in Java immer mit einem Semikolon und bitte notieren Sie auch nie mehr als eine Anweisung pro Zeile, um Verwirrung zu vermeiden.</mein>

Ihr erstes eigenes Programm

Damit Sie nun aber auch selbst aktiv werden können, setzen Sie doch bitte im folgenden Eingabefeld das am Anfang gezeigte Beispiel so um, dass jede der sechs Anweisungen als Text ausgegeben wird.

Hilfe

Datei suchen
Datei öffnen
Etwas in Datei suchen
Etwas aus Datei löschen
Etwas an Dateiende schreiben
Datei schließen

Jetzt fragen Sie sich vielleicht, ob das nicht absolute Zeitverschwendung ist und Sie die Zeit nicht mit sinnvolleren Dingen verbringen sollten, da das Ausgeben von Text wohl nicht das ist, was Sie wollten, als Sie begonnen haben. Ich kann Sie beruhigen. Ihre Programme werden bald deutlich komplexer werden und weit mehr können als Text Zeile für Zeile auszugeben. Machen wir also weiter mit Variablen und Konstanten.

Variablen

Was ist das?

Wenn Sie in ihrem Programm Daten zwischenspeichern möchten, um z.B. später weiter mit ihnen zu arbeiten, können sie dies mit Hilfe von Variablen tun. Eine Variable ist ein Bezeichner für eine bestimmte Addresse im Arbeitsspeicher (RAM) Ihres Computers. Dort wird ein Wert gespeichert. Wenn sie die Variable abfragen, wird der Wert ihrer Addresse aus dem Speicher abgerufen und ggf. verändert, z.b. wenn Sie Ihr neustes Monatsgehalt zu Ihrem Kontostand addieren möchten. Dieser hardwarebezogene Aspekt sollte damit ausreichend besprochen sein. Interessanter für uns ist hingegen, was eine Variable im Programmcode ist, wie man eine erzeugt, mit ihr arbeitet und wie man sie wieder loswird, wenn man sie nicht mehr braucht. Um letzteres brauchen wir uns bei Java keine Gedanken zu machen. Das macht die Müllabfuhr (der Garbage Collector) für uns. Er sucht nach nicht mehr benötigten Speicheraddressen und gibt sie selbstständig frei, sodass andere Programme dort Daten ablegen können. C++-Programmierer haben es da deutlich schwerer. Sie müssen manuell Speicheraddressen allokieren und freigeben und wenn sie das nicht ordentlich tun, werden ihre Programme zu echten Speicherfressern.
Kommen wir nun dazu, was eine Variable im Code so alles hat:

  1. Name (den Sie bitte immer so wählen, dass daraus ersichtlich wird, um was es sich dabei handelt)
  2. Sichtbarkeit (global oder lokal; wir definieren momentan alles global - mehr zu lokalen Variablen, wenn Sie Kontrollstrukturen kennenlernen)
  3. Lebensdauer (eine Variable existiert maximal von Programmanfang bis Programmende - versuchen Sie also bitte nicht das Beispiel mit dem Kontostand tatsächlich in dieser Form zu realisieren)
  4. Wert (eine Variable muss immer einen Wert besitzen; versuchen Sie also nie ein Programm zu starten, bevor alle Variablen einen Wert zugewiesen bekommen haben, sonst erhalten sie nur eine Fehlermeldung)
  5. Typ (Java ist eine stark typisierte Sprache d. h. jede Variable bekommt einen Typ zugewiesen - welche Typen es gibt, erfahren Sie zu einem späteren Zeitpunkt)

Da wir nun mit auch diesem Informationshäppchen am Ende sind, stellen sich nur noch die Frage: Wie erzeuge ich eine Variable und wie kann ich mit ihr arbeiten? Diese Fragen beantworten Ihnen die nachfolgenden, eher praxisorientierten Abschnitte.

Wie erzeuge ich eine Variable?

Wie Sie nun schon gelernt haben, verfügen Variablen über einen Typ, einen Namen und einen Wert (welcher mit einem Gleichheitszeichen zugewiesen wird). Außerdem werden Anweisungen immer mit einem Semikolon abgeschlossen. Nun verrate ich Ihnen etwas neues: Ein Datentyp für ganze Zahlen ist integer (engl. Ganzzahl; im Code: int). Erzeugen Sie im folgenden Eigabefeld auf Grundlage dieser Informationen (in der Reihenfolge: Typ Name = Wert;) eine Variable "zahl" (oder wie auch immer Sie diese benennen wollen) mit dem Wert "10" und geben Sie diese in der Konsole aus.

Hilfe

Typ Name = Wert;
int zahl = 10;
System.out.println(zahl);