STP071: Das Periodensystem der Datentypen
HomeSchlüsseltechnologie › Episode

STP071: Das Periodensystem der Datentypen

1:02:01 Apr 17, 2025
About this episode
Offenbar gibt es unterschiedliche Ergebnisse, wenn verschiedene Datentypen für die gleichen Dinge verwendet werden. Wir fangen heute mal damit an, zu verstehen, welche Datentypen es denn überhaupt gibt. Außerdem geht es scheinbar um Kaffee und Rost.Shownotes JSON: ein populäres Format für die Serialisierung von Daten Serialisierung: "Abbildung von strukturierten Daten auf eine sequenzielle Darstellungsform", insb. auf Bytefolgen wie in einer Datei oder einer Datenübertragung im Netzwerk JSON ist bekannt dafür, nicht erfunden, sondern "entdeckt" worden zu sein außerdem relativ minimal: nur sechs verschiedene Grundstrukturen aber trotzdem relativ universell: damit unser Ausgangspunkt für die Kartografierung der Welt der Datentypen außerdem Gegenüberstellung mit dem Typvorrat von Rust (einer zeitgenössischen Programmiersprache mit einem detaillierten Typsystem) atomare Datentypen: einzelne Werte (C++ nennt sie "Plain Old Data" (POD), Perl nennt sie "Skalare") Boolean: ein Bit (wahr oder falsch) Typvorrat in Rust: bool in JSON: true oder false Zahlen: in verschiedenen Bitgrößen, mit oder ohne Vorzeichen, Ganzzahl oder Fließkommazahl Typvorrat in Rust: u8/i8, u16/i16, u32/i32, u64/i64, u128/i128, usize/isize, f32, f64 in JSON: wie gewohnt ausgeschrieben (z.B. 42, -23.5) oder in wissenschaftlicher Notation (z.B. 7.297e-3 oder -6.022E23) Zeichenfolgen: nicht wirklich unteilbar, aber wird für gewöhnlich als einzelner Wert verstanden Typvorrat in Rust: String (UTF-8), OsString (Kodierung gemäß Zeichentabelle des Systems) und andere in JSON: als Zeichenkette mit Anführungszeichen und mit Escape-Sequenzen für nicht druckbare Zeichen (z.B. "Mit freundlichen Grüßen\nErika Mustermann") fehlender Wert: in JSON null (heißt woanders vielleicht auch nil) Typvorrat in Rust: siehe später Listen: ein abgeleiteter Datentyp deswegen vorhin "atomar": der Typ einer Liste bestimmt sich aus dem Typ der Elemente (in statisch typisierten Programmiersprachen ist z.B. "Liste von 8-Bit-Zahlen" etwas anderes als "Liste von Strings" oder "Liste von Listen von Strings") Typvorrat in Rust: mit variabler Länge: Vec, wobei X für den Typ der Elemente steht (Beispiele zu oben: Vec, Vec, Vec); der Name "Vec" deutet auf die Struktur im Arbeits
Select an episode
0:00 0:00