Jeder kann Programmieren - Teil 2

Es geht weiter zum zweiten Teil. Hier behandeln wie die notwendigen Werkzeuge und den Aufbau eines Programmes.

Werkzeuge

Der Compiler und Interpreter

Basic, Python, C, Swift, Pascal und andere Sprachen sind so genannte Hochsprachen. Computer verstehen allerdings nur Maschinensprache. 

Deshalb benötigen diese Hochsprachen einen Übersetzer. Während Interpreter den Code Zeile für Zeile übersetzt, übersetzt ein Compiler das gesamte Programm in einem Rutsch und erzeugt ein ausführbares Programm, das ohne ein zusätzliches Hilfsmittel läuft.

Dazu gibt es noch eine ganze Reihe an Sprachen, die nur auf einen Pseudo-Maschinencode übersetzen und dann über eine Art von virtueller Maschine laufen. Java ist das prominenteste Beispiel dafür. 

Dieses Werkzeug ist entweder in Form eines C/C++Compilers anbei (Linux) oder lassen sich nachinstallieren (macOS, Windows). Einige Sprachen sind auch in eine IDE eingebettet und können so einfach installiert werden. Was eine IDE ist, da kommen wir später drauf.

Debugger

Ein Debugger hilft bei der Fehlersuche, in dem du das Programm anhalten kannst und je nachdem auf den Speicher sehen kannst. 

Auch ein Debugger ist meist im Paket mit dabei (XCode, PureBasic) oder lässt sich nachinstallieren.

Texteditor / IDE

Ein Texteditor ist meist bei dem System bereits enthalten.Im Gegensatz zu einer Textverarbeitung kann ein Texteditor keine Formatierung oder Grafiken einbinden. Die brauchen wir beim Programmieren nicht. 

Allerdings sind Editoren wie Textedit und Editor nicht gerade komfortabel. Deshalb gibt es gute Editoren, wie Visual Studio Code, die Merkmale wie Einfärbung oder auch Terminaleinbindung. Mit Erweiterungen lässt sich Visual Studio Code auch als IDE verwenden.

IDE's dagegen sind weitaus mehr als nur reine Texteditoren. Neben der Editorkomponente kann man auch den Compiler steuern, Haltepunkte für den Debugger setzen, oder GUIs grafisch erstellen. Meist ist auch die direkte Anbindung an die interaktive Hilfe.

Viele IDEs sind mit einer Sprache verbunden, beispielsweise Xcode mit Swift und Objective-C oder PureBasic mit der PureBasic IDE und Lazarus mit FreePascal.

Die IDE nimmt schon sehr viel Arbeit ab und hilft, sich auf das eigentliche Programmieren zu konzentrieren.

Diese drei Werkzeuge benötigt man um mit dem Programmieren anzufangen.

Aufbau eines Programmes

In den meisten Sprachen ist das erste Programm ein "Hallo Welt"-Programm, das einfach nur den Text "Hallo Welt" ausgibt und sich beendet. 

Da wir hier anfangen, ohne eine Bindung an eine Programmiersprache (allerdings mit grober Ausrichtung an Basic) zu programmieren ist das Programm einfach:

Print "Hallo Welt"

"Print" ist ein eingebauter Befehl, den es auch in anderen Sprachen, wie Swift oder Python gibt, und einfach den Text in Anführungszeichen ausgibt. 

In Pascal muss man mehr Aufwand betreiben:

program Hallo;
uses crt;
begin
     writeln('Hallo Welt!');
end.   

Da Pascal eine sehr streng formalisierte Sprache ist, muss man eine Formalität beachten.

Programme beginnen mit dem Wort "program", wo man einen Namen vergibt.

"uses crt;" lädt eine so genannte Bibliothek, in der Befehle zur Textausgabe vorhanden sind.

"Begin" und "End." markieren den Anfang und das Ende des eigentlichen Programmes, und "writeln" ist der eigentliche Befehl, wie "print" bei Basic. Zu beachten ist auch das jede Zeile mit einem Semikolon abgeschlossen werden muss und das Ende des Programmes immer mit einem Punkt beendet wird.

Trotz dieser Unterschiede gibt es einige Gemeinsamkeiten. Und die werden wir in den nächsten Teilen behandeln.