Konsole
Ein Programm kann eine „Benutzeroberfläche“ verwenden, um die Kommunikation mit dem Bediener durchzuführen. Als Benutzeroberfläche bezeichnet man alle Programmteile, die die Eingaben des Benutzer direkt einlesen und direkt das ausgeben, was der Benutzer sieht.
Benutzeroberfläche
,,ggddY""""Ybbgg,,
,agd""' `""bg,
,gdP" "Ybg,
,dP" "Yb,
,dP" _,,ddP"""Ybb,,_ "Yb,
,8" ,dP"' `"Yb, "8,
,8' ,d" "b, `8,
,8' d" "b `8,
d' d' `b `b Bediener
8 8 8 8
8 8 Datenverarbeitung 8 8 <-------> o _
8 8 8 8 /\
8 Y, ,P 8 / |
Y, Ya aP ,P
`8, "Ya aP" ,8'
`8, "Yb,_ _,dP" ,8'
`8a `""YbbgggddP""' a8'
`Yba adP'
"Yba Benutzeroberflaeche adY"
`"Yba, ,adP"'
`"Y8ba, ,ad8P"'
``""YYbaaadPP""''
Konsolenmodelle
Die einfachste Form einer Benutzeroberfläche ist die Konsole, die historisch auf Fernschreiber zurückgeht, die man zunächst an Rechner anschloß, um diese zu bedienen. Das Wort „Konsole“ steht hier für eine Tastatur zur Texteingabe und einem Schreibgerät (Drucker, Bildschirm) zur Textausgabe oder zumindestens der Simulation solcher Geräte, wobei man dann auch von einem „Modell einer Konsole“ sprechen kann.
Konsolenmodell [Datenflussplan]
.-'""'-. .---------. .-'""'-.
.' '. | | .' '.
/ \ | | / \
; Text- ;---->| Vorgang |---->; Text- ;
; Eingabe ; | | ; Ausgabe ;
\ / | | \ /
'. .' | | '. .'
'-....-' '---------' '-....-'
Für erste Programmierübungen ist die textbasierte Ein- und Ausgabe mit einer Konsole bestens geeignet, weil sie am einfachsten zu programmieren ist und von den meisten Programmiersprachen in standardisierter Weise bereitgestellt wird. Dieses relativ einfache Verfahren der Ein- und Ausgabe erlaubt es dem Lernenden, sich zunächst auf das Erlernen der Programmiersprache und des Programmierens zu konzentrieren.
Daher stellen viele Programmiersprachen und Umgebungen die Ein- und Ausgabe mithilfe eines Konsolenmodelles zur Verfügung, also eines Teilsystems, das sich auch auf Rechnern, die keine wirkliche Konsole sind, wie eine klassische Konsole verhält. Wenn es auf einem Rechner beispielsweise grundsätzlich möglich ist, einzelne Pixel des Bildschirms anzusteuern, so steht diese Funktion bei Verwendung des Konsolenmodells nicht zur Verfügung. Vorteilhaft ist es aber, daß Programme, die das Konsolenmodell verwenden, leicht auf viele Rechner übertragbar sind, weil viele Rechner solch ein Konsolenmodell bereitstellen.
Zeilen
Die meisten Konsolen sind sowohl hinsichtlich der Eingabe als auch hinsichtlich der Ausgabe zeilenorientiert: Das heißt sie lesen und schreiben Zeilen und keine einzelnen Zeichen. Das hat verschiedene Konsequenzen.
- Ein Bediener kann eingegebene Text vor dem Abschluß der Eingabezeile noch mit den Mitteln der Konsole überarbeiten. Erst mit Abschluß der Eingabezeile (beispielsweise durch die Eingabetaste) wird die Eingabe an den Datenverarbeitungsprozeß übermittelt.
- Der Prozeß kann daher keine einzelnen Zeichen (Tastendrücke) von einer Konsole lesen.
- Der Prozeß kann nur Zeile für Zeile auf die Konsole ausgeben. Es ist oft nicht möglich davon abweichende Vorstellung („Löschen des Bildschirmes“, „Zwei Zeilen zurückgehen“) zu realisieren.
- Wenn Zeichen ausgegeben werden, ohne daß ein Zeilenabschluß folgt, dann kann man nicht davon ausgehen, daß diese für den Bediener der Konsole schon sichtbar sind. Eine Konsole kann solche Zeichen zunächst intern sammeln und erst ausgeben, wenn die Zeile abgeschlossen wurde.
- Daraus folgt, daß es im allgemeinen wünschenswert ist, daß die letzte Ausgabe auf die Konsole immer der Zeilenabschluß ist, damit alle bisher ausgegebenen Zeichen auch sichtbar sind.
Wortkunde
Das deutsche Wort „Konsole“ bedeutet sonst soviel wie „Krage, Kragstein; Wandgestell [für Gegenstände der Kleinkunst]“ und wurde im 18. Jahrhundert aus dem gleichbedeutenden französischen « console » entlehnt, dessen genaue Herkunft nicht gesichert ist. Im der Elektrotechnik bedeutet das englische Wort “console” (und auch das deutsche Wort „Konsole“) soviel wie das Wort „Schaltpult“ oder das Wort „Steuerpult“.