Programmieren: Wahl der Programmiersprache: Prozedurale Sprachen

Aus Wikibooks

Wechseln zu: Navigation, Suche
Bild:Wikibooks buchseite.svg Zurück zu Hochsprachen | Bild:Wikibook.svg Hoch zu Inhaltsverzeichnis | Bild:Wikibooks buchseite.svg Vor zu Objektorientierte Sprachen



Prozedurale Sprachen erlauben es, Probleme durch Prozeduren und Funktionen in kleinere Teilprobleme zu zerlegen und damit zu strukturieren. Bekannte prozedurale Sprachen sind:

[Bearbeiten] Pascal

Die Ende der 1960er Jahre von Niklaus Wirth geschriebene Sprache Pascal gilt als die klassische strukturierte Programmiersprache. Sie zeichnet sich durch große konzeptuelle Strenge aus und wurde mit der Implementierung von Turbo Pascal durch die Firma Borland populär. Dessen Weiterentwicklung Delphi unterstützt auch objektorientierte Programmierung (siehe unten).

Als Freie Software Implementierungen der Sprache Pascal gibt es zum Einen Free Pascal, welches sich vor allem an Delphi orientiert, und zum Andereren GNU Pascal, welches sich vor allem die Kompatiblität zu den offizellen Standards auf seine Fahnen geschrieben hat, aber auch zu den Borland und einigen anderen Produkten kompatibel ist. Beide Compiler unterstützen ebenfalls die objektorientierte Programmierung.

Pascal ist sehr gut zum Einstieg geeignet, gerade auch durch seine konzeptuelle Strenge: diese zwingt dazu, eine gewisse Disziplin beim Programmieren einzuüben, die der Qualität des Codes zugute kommt.

[Bearbeiten] C

Die Programmierung von Betriebssystemen wurde ursprünglich in Assembler durchgeführt. Dies ist, wie wir bereits gesehen haben, mit einem sehr hohen Aufwand verbunden. Außerdem muss das Betriebssystem für jede Plattform neu implementiert werden. Mit der Einführung von C wurde erstmals ein Betriebssystem in einer Hochsprache entwickelt (Unix). Auch moderne Betriebssystemkerne wie die von Windows oder Linux sind in C geschrieben. Da sich C als sehr vielseitig und sehr effizient erwiesen hat, wurden auch bald Anwendungsprogramme damit programmiert.

C kann als Antithese zu Pascal angesehen werden: Die Sprache gibt dem Programmierer sehr viele Freiheiten, die allerdings auch Fehlerquellen implizieren. Bei der Standardisierung als 'ANSI-C' wurde die ursprüngliche Sprachversion von Kernighan und Ritchie ('K&R-C') sowohl etwas gezähmt als auch erweitert.

Als Nachteil von C wird heute die schwierige Entwicklung unter graphischen Benutzeroberflächen angesehen – ein Programm, das nur den Text "Hello World" in Windows ausgibt, umfasst bereits ca. 70 Zeilen (siehe Beispiel in der Wikipedia).

Eine weitere Schwierigkeit für Ungeübte ist die sehr intensiv genutzte Zeigertechnik. Zeiger sind, vereinfacht gesagt, Verweise auf eine andere Stelle im Arbeitsspeicher. Diese machen die Programme allerdings fehleranfällig, da durch Zeiger praktisch jeder Speicherbereich ohne Einschränkung angesprochen werden kann, selbst wenn moderne Betriebssysteme durch das Mittel des Speicherschutzes weitestgehend verhindern, dass daraus Systemabstürze resultieren können. Der korrekte Umgang mit Zeigern verlangt Disziplin.

C ist nicht für Anfänger geeignet. Für die Entwicklung privater, kleinerer Programme hat C einen zu hohen Lernaufwand. Für fortgeschrittene Programmierer gehört C allerdings zur Allgemeinbildung, da sich viele jüngere Sprachen an seine Syntax anlehnen.

Eine häufig gestellte Frage von Programmieranfängern ist, ob es vorteilhaft ist, erst C und dann C++ zu lernen (wir werden weiter unten noch auf diese Programmiersprache eingehen). Dafür spricht, dass C in etwa eine Untermenge von C++ ist; dagegen spricht, dass C++ objektorientierte Programmierung unterstützt und für viele Aufgabenstellungen prinzipiell andere Ansätze präferiert werden.

[Bearbeiten] BASIC

BASIC ist die Abkürzung für Beginner's All-purpose Symbolic Instruction Code, was sich in etwa mit vielseitige, symbolische Programmiersprache für Anfänger übersetzen lässt. Dies beschreibt auch schon das Ziel der Sprache: Sie ist 1964 speziell als Lehrsprache für Anfänger entwickelt worden.

In der Vergangenheit war Basic sehr umstritten, da in den frühen Versionen strukturierte Programmierung nicht möglich war: Es gab keine Funktionen oder Prozeduren; man konnte lediglich mit dem goto-Befehl die Programmausführung an einer beliebigen Stelle fortsetzen, was schnell zu unübersichtlichem, sogenanntem "Spaghetti-Code" führte.

Alle heute vorhandenen Basic-Dialekte unterstützen allerdings die strukturierte Programmierung in vollem Umfang. In der Windows-Welt ist heute eigentlich nur noch das von Microsoft entwickelte Visual Basic von Bedeutung. Für Linux ist seit einiger Zeit die Programmiersprache Gambas verfügbar, die große Ähnlichkeit mit Visual Basic aufweist.

Mit den heute verfügbaren Basic Dialekten lassen sich eine große Anzahl von Problemstellungen lösen. Visual Basic und Gambas unterstützen auch die objektorientierte Programmierung. Bei der Programmierung von größeren Anwendungen ist die Sprache allerdings weniger geeignet. Hier sind Sprachen wie C++, C# oder Java vorzuziehen. Ein weiterer Nachteil ist die schlechte Standardisierung von Basic, die eine Portierung auf andere Betriebssysteme oder Plattformen entweder schwierig oder sogar unmöglich macht.

Einige Programmierer raten von Basic als Einsteigersprache ab, weil es ihrer Meinung nach den Programmierstil verdirbt.


Bild:Wikibooks buchseite.svg Zurück zu Hochsprachen | Bild:Wikibook.svg Hoch zu Inhaltsverzeichnis | Bild:Wikibooks buchseite.svg Vor zu Objektorientierte Sprachen


Persönliche Werkzeuge