Lektion 01 - JSON Grundlagen
Was ist JSON und warum speichern wir damit Daten?
JSON bedeutet JavaScript Object Notation. Es ist ein Textformat, mit dem Daten strukturiert gespeichert oder zwischen Programmen ausgetauscht werden koennen. JSON ist kein Programmcode, sondern eine Datenbeschreibung.
1. Warum braucht man Speicherung?
Wenn ein Programm nur im Arbeitsspeicher arbeitet, sind Daten nach dem Schliessen wieder weg. Speicherung bedeutet: Daten werden so abgelegt, dass man sie spaeter wieder laden kann. In echten Apps betrifft das zum Beispiel Profile, Einstellungen, Aufgabenlisten, Lernfortschritt oder Warenkoerbe.
2. JSON sieht aus wie ein Objekt
JSON speichert Daten als Schluessel-Wert-Paare. Ein Schluessel ist der Name der Information. Der Wert ist die eigentliche Information. Schluessel stehen in JSON immer in doppelten Anfuehrungszeichen.
{
"name": "Mina",
"age": 22,
"isActive": true
}
Dieses JSON beschreibt eine Person. "name" ist ein Schluessel,
"Mina" ist der Wert. "age" ist ebenfalls ein Schluessel,
22 ist eine Zahl.
3. Welche Datentypen gibt es in JSON?
JSON kann einfache Werte und verschachtelte Strukturen speichern. Wichtig ist: JSON kennt keine Funktionen, keine Klassen und keine Kommentare. Es ist nur fuer Daten gedacht.
"Dart Kurs"42truenull["Dart", "Flutter"]{"points": 10}4. JSON-Regeln, die du dir merken musst
- Schluessel muessen in doppelten Anfuehrungszeichen stehen.
- Strings muessen ebenfalls doppelte Anfuehrungszeichen nutzen.
- Zwischen Schluessel und Wert steht ein Doppelpunkt.
- Mehrere Eintraege werden mit Komma getrennt.
- Nach dem letzten Eintrag kommt kein Komma.
- JSON darf keine Funktionen enthalten.
Richtig:
{
"course": "JavaScript",
"points": 15
}
Falsch:
{
course: "JavaScript",
points: 15,
}
5. JSON fuer ein Lernsystem
Fuer dein Coding-Lernsystem kann JSON sehr gut beschreiben, welche Kurse, Lektionen und Aufgaben existieren. Erstmal speichern wir kleine Daten. Spaeter kann daraus eine groessere Datenstruktur werden.
{
"user": {
"name": "Mina",
"level": 1,
"points": 80
},
"completedLessons": [
"dart-intro",
"json-basics"
]
}
6. Uebungen
- Schreibe JSON fuer eine Person mit Name, Alter und aktivem Status.
- Schreibe JSON fuer einen Kurs mit Titel, Thema und drei Lektionen.
- Schreibe JSON fuer eine Todo-Aufgabe mit Titel und erledigt-Status.
- Finde den Fehler:
{ name: "Alex", "points": 10, } - Erklaere in eigenen Worten, warum JSON keine Funktionen speichert.