Datenkompression
Daten sollen möglichst effizient gespeichert und übertragen werden:
Beispiel: Tar o. Zip zur Kompression von Dateien
<?php
$file = 'homepage.zip';
$path = pathinfo(realpath($file), PATHINFO_DIRNAME);
$zip = new ZipArchive;
$res = $zip->open($file);
if ($res === TRUE) {
$zip->extractTo($path);
$zip->close();
echo "Glueckwunsch! $file wurde erfolgreich nach $path exportiert.";
} else {
echo "Die Datei $file konnte nicht gefunden/geoeffnet werden.";
}
?>
📁 Verzeichnis: /var/www/html
entpacken.php (führt das Script aus)homepage.zip (die zu entpackende Datei)📦 Aktion: homepage.zip wird geöffnet
📂 Entpackt nach: /var/www/html (aktuelles Verzeichnis)
✅ Erfolgreich: „Glückwunsch! ... wurde erfolgreich exportiert.“
❌ Fehler: „Die Datei ... konnte nicht geöffnet werden.“
Verlustfreie Datenkompression
|
Verlustbehaftete Datenkompression
|
Merkmale:
Ziel:
Koffer soll möglichst klein und kompakt gepackt werden
Komprimierung
Ziel: Redundanz in den Daten möglichst gering halten
Fehlertoleranz
Redundante Daten unterstützen Fehlererkennung und Fehlerkorrektur
index.html
<html>
<body>
<h1 style="font-family: Arial; font-size: 30px; color: red;">Wartungsseite</h1>
<p style="font-family: Arial; font-size: 16px; color: black;">Diese Homepage wird erstellt von Name</p>
<h2 style="font-family: Arial; font-size: 24px; color: orange;">Bitte habe noch etwas Geduld, die Homepage befindet sich noch in der Entstehung</h2>
<p style="font-family: Arial; font-size: 16px; color: black;"><a href="kontakt.html">Hier könnt ihr mich</a></p>
</body>
</html>
kontakt.html
<html>
<body>
<h1 style="font-family: Arial; font-size: 30px; color: rgb(0, 21, 255);">Kontaktseite</h1>
<p style="font-family: Arial; font-size: 16px; color: black;">Feedback oder Verbesserungsvorschläge zu meine Homepage? Dann melde dich bei mir:</p>
<h2 style="font-family: Arial; font-size: 24px; color: orange;">dummy@email.de</h2>
<p style="font-family: Arial; font-size: 16px; color: black;">Danke für dein Feedback :)</p>
</body>
</html>
CSS:
Selektor { Eigenschaft : Wert ; }
‘stylesheet.css‘ für unser Beispiel:
p { font-family: Arial; font-size: 16px; color: black; }
‘stylesheet.css‘ formatiert:
p {
font-family: Arial;
font-size: 16px;
color: black;
}
HTML aufräumen:
<html>
<body>
<h1>Überschrift</h1>
<p>Erster Absatz</p>
<h2>Zweite Überschrift</h2>
<p>Zweiter Absatz</p>
</body>
</html>
Die „stylesheet.css“-Datei enthält diesen Code:
p {
font-family: Arial;
font-size: 16px;
color: black;
}
h1 {
font-family: Arial;
font-size: 30px;
color: red;
}
h2 {
font-family: Arial;
font-size: 24px;
color: orange;
}
externes Stylesheet laden:
<html>
<head>
<link rel="stylesheet" href="stylesheet.css">
</head>
<body>
<h1>Überschrift</h1>
<p>Erster Absatz</p>
<h2>Zweite Überschrift</h2>
<p>Zweiter Absatz</p>
</body>
</html>
Aufgabe 1: (im Anschluss)
index.html und kontakt.html auf.
Herold et al. (2017): Grundlagen der Informatik
Allgemein benötigen Huffman-codierte Texte ca. 2/3 des Speicherplatzes im Vergleich zur ASCII-Codierung.
Aufgabe 2