Imperative Programmierung
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.</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.
Sie müssten nun folgende Ausgabe sehen:
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 und Konstanten
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 und Konstanten tun. Eine Variable hat hierbei (der Name verrät es) einen variablen Inhalt. Eine Konstante hingegen verfügt (wer hätte das gedacht) über einen konstanten Inhalt. Wollen Sie z.B. einen Wert wie Pi nutzen, sollten Sie, da Pi eine Konstante ist, auch eine solche zur Speicherung des Wertes nutzen. Wollen Sie hingegen z.B. ein Programm entwickeln, das ihren Kontostand überwacht, würde sich, da Ihr Kontostand variiert, eine Variable zur Speicherung des Wertes anbieten. Damit sind wir, was den konzeptionellen Ansatz angeht, am Ende dieses Informationshäppchen angelangt. Im folgenden verrate ich Ihnen, wie sie Variablen und Konstanten in Java nutzen können.
42 und flexibel
Nachdem Sie den theoretischen Aspekt verstanden haben, wollen wir uns nun etwas Praxis zuwenden. Da die Zahl Pi als Konstante in Java bereits zur Verfügung steht, lohnt es nicht, diese nochmals zu definieren. Wir nehmen also die Zahl 42 (http://de.wikipedia.org/wiki/42_%28Antwort%29) und eine beliebige ganze Zahl zwischen neun und elf. Wie wäre es also mit zehn?
Definieren und nutzen
Bevor wir eine Variable oder Konstante nutzen können, müssen wir sie zunächst einmal definieren. Wie funktioniert das? Generell funktioniert es wie das definieren eines beliebigen Wortes. Wir geben der Sache einen Namen wie z. B. Energie und geben dazu an, was das ist (die Fähigkeit eines Körpers Licht auszusenden, Wärme abzustrahlen oder mechanische Arbeit zu verrichten). Wir nennen unsere Konstante also z. B. sinnDesLebens und geben ihr den Wert 42 (ihren Initialwert). Variablen und Konstanten müssen immer erst initialisiert werden, bevor man sie verwenden kann. Ein Programm darf keine nicht initialisierten (also nicht definierten) Variablen oder Konstanten enthalten. In Java hat alles einen Typ (Java ist eine stark typisierte Sprache - später mehr dazu). So sind also die Zahlen 42 und 10 ganze Zahlen und sind daher vom Typ integer (Ganzzahl; im Code: int). Da wir diese vorerst global (also im gesamten Programm verfügbar) definieren, müssen wir noch das Wort static voranstellen.
Wir schreiben also für unsere Variable: static int beliebigeZahl = 10;
Bei unserer Konstanten ist dies leider noch nicht ausreichend. Wir müssen sie schließlich daran hindern, im Programmverlauf versehentlich ihren Wert zu ändern. Nicht auszudenken, was passiert, wenn der Sinn des Lebens plötzlich 43 wäre. Darum müssen wir sie noch mit einem weiteren Modifikator ausstatten, denn Modifikatoren (zu denen auch static zählt) haben (erneut verrät es bereits der Name) die Eigenheit, Eigenschaften von Dingen zu verändern. So übergeben wir also noch den Modifikator final an unsere Variable, um sie zur Konstante zu machen.
So schreiben wir also, um eine Kostante zu definieren: static final int sinnDesLebens = 42;