Sprachlogik in AutoIT #2

In diesem Teil der Sprachlogik möchte ich mich mit Schleifen (while(), for()), Funktionen (function()) IF-Anweisungen, Operatoren und Makros beschäftigen.

Ich bezeichne als Sprachlogik die Grundlegenden Funktionen, die es bei so gut wie allen Programmiersprachen gibt. Manchmal haben diese andere Namen (wie z.b. in TurboPascal: Funktionen nennen sich dort „Prozeduren“), aber im Grunde erfüllen Sie den gleichen Zweck. Dies beschreibt natürlich auch Kommentare, welche es auch schon bei der Stapelverarbeitung (Batch-Programmierung) gab (Befehl: rem).

Operatoren

In AutoIT gibt es einen Standard-Satz von logischen, mathematischen und Vergleichsoperatoren. Ich denke, dazu muss ich nicht mehr viel sagen – hier eine Liste:

AutoIT Operatoren (AutoIT-Manual)
AutoIT Operatoren (AutoIT-Manual)

Makros

Markos beschreiben in AutoIT soetwas wie Umgebungsvariablen. Sie enthalten Informationen, die sehr einfach abgerufen werden können. Makros erkennt man an dem führenden „@“.
Alle hier aufzulisten würde den Rahmen sprengen – da verweise ich auf die AutoIT-Manual. Aber um einige genannt zu haben:

@HOUR, @MIN, @SEC, @MDAY, @MON, @YEAR, @OSType, @ComputerName, @UserName, @MyDocumentsDir, @WindowsDir, @TempDir, @error

Diese können ganz einfach im Script aufgerufen werden:

Dies würde dann „2007“ ausgeben.

IF-Then-Else

Mit IF-Anweisungen lassen sich einfache Fallabfragen realisieren. Geprüft wird immer eine oder mehrere Bedingungen, wenn Sie zutreffen, wird ther „Then“-Teil ausgeführt. Im Gegensatz zu anderen Sprachen kann man den Zuweisungsoperator „=“ auch als Vergleichsoperator nutzen.
Ein Beispiel:

Man kann dies natürlich anhand eines Else-Statements vereinfachen:

Was aber nun, wenn in jedem anderen Fall ($var ist NICHT gleich 1 und NICHT gleich 5) etwas passieren soll? Richtig! Else:

While-Schleife

In AutoIT können ebenso While-Schleifen (Kopfgesteuerte Schleifen) genutzt werden. Dieser wird – wie von anderen Sprachen bekannt – eine Bedingung übergeben. Solange diese Bedingung zutrifft, oder nicht „manuell“ abgebrochen wird, wird der Schleifen-Text ausgeführt. Ein Beispiel:

Schleifen können auch abgebrochen werden:

For-Schleife

Nun, ich denke, ein einfaches Beispiel sagt mehr als tausend Worte:

Funktionen

Man geht von folgender Situation aus: Man möchte an mehreren Stellen in einem Programm eine Berechnung durchführen. Es werden mehrere Zahlen eingelesen, die mtieinander addiert werden sollen.

Nun könnte man an jeder dieser Stellen die Gleichung $ergebnis = $a + $b + $c schreiben. Auf dauer, und gerade bei komplizierteren Gleichungen ergibt das sehr viel Code – der doch irgendwie gleich ist.

Hier kommen Funktionen ins Spiel: Funktionen drücken sich „Allgemein“ aus, und tun nichts weiter als Blackbox spielen: Man wirft zwei Äpfel rein, und raus kommt eine Birne.

Dies hat natürlich auch den Vorteil, dass es dem Programmierer, der davor sitzt, egal sein kann, wie genau aus zwei Äpfeln eine Birne wird. Dieser Fakt ist wichtig: Es ist heute nicht mehr nötig, dass jeder Programmierer ein kluger Mathematiker sein muss, der sich mit den Begebenheiten der Naturwissenschaften auskennt – er muss nur eine Funktion nutzen, die ein solcher geschrieben hat.

Funktionen müssen KEINE Parameter übergeben werden:

Bastian
Bastian

Seit 2006 bin ich täglich im IT-Umfeld unterwegs und interessiere mich für technische Lösungen im Hard- und Softwarebereich, die einem den Alltag erleichtern. Zu meinen Hobbies zählt der 3D-Druck, das Tüfteln, Scripten, eine eigene Holzwerkstatt, sowie der unqualifizierte Umgang mit dem Lötkolben.

Artikel: 126

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.