Bereits in P0 Basics: EVA-Prinzip, Codierung von Ein- und Ausgabewerten wurde das EVA-Prinzip besprochen. Dank der Verwendung von Standard Bibliotheken, können alle Ein- und Ausgaben gleich behandelt werden. Es braucht einem nicht mehr zu kümmern, ob die Eingabe von der Tastatur, einer Netzwerkdatei oder einer Spracherkennung stammt. Ebenso kann die Ausgabe durch Verwendung standardisierter Schnittstellen auf dem Bildschirm, dem Drucker oder im Nichts enden.
Streams und Sockets sind die wichtigsten Komponenten zur standardisierten Ein- und Ausgabe. Sie stellen die Verbindung zu allen möglichen Geräten (Tastatur, Bildschirm, Drucker, Laufwerke, usw.) zur Verfügung.
-
Verbindungsaufbau
Datenaustausch
Verbindungsabbau
Die Kommunikationsschnittstellen funktionieren immer nach dem FIFO Prinzip (first in first out), geben die Daten also immer in chronologischer Reihenfolge weiter.
Die Datenmenge pro Zeiteinheit (Datenrate) kann variieren und so gross sein, dass nur begrenzte Ressourcen zur Weiterverarbeitung zur Verfügung stehen. Datenströme können daher nicht als ganzes, sondern nur fortlaufend verarbeitet werden. Insbesondere ist im Gegensatz zu Datenstrukturen wie Lits & Sets (
P2 Lists & Sets: Datenstrukturen und ADTs (
p4_adt) nur ein sequentieller Zugriff auf die einzelnen Daten möglich.
Ich kenne die Vorteile von Standard IO-Bibliotheken und kann diese anhand von Beispielen erläutern.
Ich kennen die Unterschiede zwischen Streams und Datenstrukturen mit wahlfreiem Zugriff und kann die Folgen für die Verwendung erklären.
Ich kann die drei Schritte einer Kommunikation nennen und anhand eines Beispiels erklären.
Ich kann Ein- und Ausgabe mit Hilfe von Standard IO-Bibliotheken einer Programmiersprache implementieren.

Das ist das Problem, wenn man Java nimmt, dass man hierfür eine Bibliothek anschnallen muss. —
Paul Miotti 2008/06/24

I/O

Hier ist das Lesen und Schreiben von Datenströmen (Files, Sockets, …) gemeint und nicht das EVA-Prinzip als eine der Grundlangen der EDV.