Niedere Programmiersprachen
Die niederen Programmiersprachen waren die ersten Programmiersprachen. Diese Art von Programmiersprachen war oft ziemlich schwierig und hatte oft eine schwer zu beherrschende Syntax. Niedere Programmiersprachen erzeugen sehr schnelle Programme, sind aber meistens aufwendig zu erlernen. Ein weiterer entscheidender Nachteil von Programmen in niederen Programmiersprachen, die sehr speziell auf einen Mikroprozessortyp zugeschnitten sind, ist die erforderliche vollständige Neuentwicklung, wenn das Programm auf einem anderen Rechner eingesetzt werden soll. Mit einem geringen Sprachumfang ausgestattet, arbeiten Mikroprozessoren ausschließlich mit binären elektronischen Signalen. Das Übermitteln eines Befehls an einen Mikroprozessor bedeutet in Wirklichkeit das Senden einer zeitlich genau abgestimmten Serie von „An”- und „Aus”-Signalen. Diese Signalfolgen ergeben den Maschinencode (oder die Maschinensprache). Der Code stellt normalerweise Zahlen, Daten und Befehle dar. So genannte Mnemonics (Merkwörter) sind leichter einprägsame Umschreibungen für einzelne Befehle. Üblicherweise handelt es sich hierbei um englische Wörter, wie z. B. STORE (speichern), ADD (addieren) oder JUMP (springen). Das Ergebnis daraus ist eine so genannte Assemblersprache – eine Sprache auf einer sehr niedrigen Ebene, die jeweils speziell für einen bestimmten Mikroprozessor gilt. So steht beispielsweise beim 8086-Mikroprozessor der Befehl RET (Return) für den Binärcode 11000011b. Man sieht also, dass die niederen Programmiersprachen relativ schwierig zu lernen sind. Ein Beispiel für eine niedere Programmiersprachen ist Assembler.
Höhere Programmiersprachen
Höhere Programmiersprachen sind die heute am meisten verwendeten Programmiersprachen. Da dem Computer an sich die Programme unverständlich sind, müssen sie immer erst compiliert werden. Beim compilieren wird das Programm in den Maschinencode übersetzt. Sie belegen mehr Speicherplatz und sind in der Ausführung langsamer als vergleichbare reine Maschinencodes. Die höheren Programmiersprachen sind im Gegensatz zu den niederen Programmiersprachen leichter zu erlernen und haben oft mehr Befehle als die niederen. Dies gibt den Programmierern neue Möglichkeiten bei der Entwicklung. Programmiersprachen wie BASIC haben einen Interpreter (Übersetzer). D. h., dass der Quelltext des Programms erst während der Ausführung übersetzt wird. Dieses Verfahren verlangsamt jedoch das Programm und da es als Quelltext vertrieben wird, kann man sich den ganzen Quelltext von anderen Programmen unauthorisiert kopieren und ihn verwenden.
Eine Ausnahme bildet die objektorientierte Programmiersprache JAVA. Bei ihr wird das Programm zuerst compiliert und dann beim Ausführen interpretiert. Das ganze geht zwar auf Kosten der Geschwindigkeit, aber die Programme sind plattformunabhängig. D.h., man kann diese Programme auf Windows, Linux, Solaris oder MacOS ausführen, ohne dabei Veränderungen vorzunehmen.
Objektorientierte Programmiersprachen
Objektorientierte Programmiersprachen haben sich erst relativ spät herausgebildet. Im Jahre 1980 entstand mit SMALL TALK 80 die erste Programmiersprache, die konsequent Fenstertechnik und eine Maus als Eingabemedium verwendet und alle Ausgaben auf einem pixelorientierten Bildschirm ausgibt. Jedes Objekt hat eine Anzahl von Attributen (Eigenschaften) und kennt bestimmte Operationen, die es ausführen kann. Diese Operationen nennt man Methoden. Die Objekte untereinander treten in Verbindung durch Aussenden von Messages. Die Objekte sind in Klassen geordnet. Die Klassen enthalten Definitionen von den Methoden und vieles mehr.
Beispiel: Klasse: Auto Methoden:
- Geschwindigkeit erhöhen
- Geschwindigkeit senken
- Geschwindigkeit anzeigen
Daten:
-Geschwindigkeit
Ein weiterer Aspekt bei den objektorientierten Programmiersprachen ist die Vererbung. Die Klassen lassen sich Vererben. Die vererbte Klasse enthält dann dieselben Daten und Methoden und kann um weitere erweitert werden. Am Beispiel mit der Klasse Auto kann man z. B. daraus eine Klasse Bus machen, da ja die Methoden und Daten dieselben sind.
Beispiel:
Klasse: Auto
Methoden:
- Geschwindigkeit erhöhen
- Geschwindigkeit senken
- Geschwindigkeit anzeigen
Daten: -Geschwindigkeit
wird zu: Klasse: Bus
Methoden:
- Geschwindigkeit erhöhen
- Geschwindigkeit senken
- Geschwindigkeit anzeigen
- Haltestelle anzeigen
- an Haltestelle anhalten
Daten:
-Geschwindigkeit
Beispiele für objektorientierte Programmiersprachen: JAVA, C++, Delphi, …
Datenbank- und Anwendungssprachen
Die Datenbankanwendungen sind lösungsorientiert. D.h., dass man zum Beispiel der Datenbank die Anweisung gibt, nach einem Namen zu suchen und man nicht erst selbst ein Programm schreiben muss, das nach Namen sucht. Die Datenbank erledigt das für den Benutzer. Eine ziemlich bekannte Datenbankanwendung ist SQL (Structured Query Language) von IBM, deren Quelltext heutzutage kostenlos zu haben ist. Datenbankanwendungen werden hauptsächlich für Webseiten oder in Firmen benutzt, wo man große Mengen an Daten verwalten muss. Beispiel für Datenbanksprachen: ODBC, SQL, DBase, … Mit den Anwendungssprachen kann man die jeweiligen Anwendungen um bestimmte Funktionen erweitern. Ein berühmter Vertreter dieser Gruppe ist VBA (Visual Basic for Applications). Mit dieser Programmiersprache kann man die Microsoft Office-Familie (Microsoft Word, Excel,…) um weitere Funktionen erweitern und sie sich nach Belieben anpassen. Ein entscheidender Nachteil ist, dass es auch Viren gibt, die zum Beispiel als Word-Dokument getarnt sind. So kann so ein Virus Dateien auf der Festplatte löschen und vieles mehr. Aber trotz dieser Nachteile sind Anwendungssprachen ziemlich beliebt. Beispiel für Anwendungssprachen: VBA
(hs, aj, akm)
Hinterlasse deinen Kommentar »