2. Klassen - Objekte
-
Klasse: Blueprint für ein Objekt
-
Objekt: allokierter Speicher am Heap
-
Identität (Identity): Adresse wo das Objekt im Heap gespeichert ist
2.1. Unterschied: Klassen- zu Objektdiagramm
-
Klassendiagramm: Bauplan
-
Objektdiagramm: Objekt kann mehrmals vorkommen, da man sie öfters instanzieren (mehrere Instanzen erstellen) kann
2.2. Multiplizität:
-
0 Instanzen: Utility KLasse
-
1 Instanz: Singleton
-
mehrere Instanzen: Standard Klasse
2.4. Assoziation
-
Strukturelle Beziehung zwischen Elementen (Person arbeitet im Firma)
-
Multiplizität:
-
Eine Person arbeitet in einer Firma
-
Eine Firma kann mehrere Personen anstellen
-
von Person kann über Firma auf Firmaname zugegriffen werden, ABER nicht von Firma auf Person, bräuchte eigene List Person in Firma ⇒ wartungsintensiv, da mehr Code ⇒ keine Zugriffe in beide Richtungen erwünscht
-
-
Multiplikation = Kardinalität
2.6. Warum Normalisieren?
-
Datenbestand so aufbereiten, damit man nach verschiedenen Kriterien / Dimensionen abfragen kann.
-
Informationswürfel: hat mehrere Dimensionen (z.B. Kunde, Produkt, Zeit,…)
-
konzeptionelles Schema: gilt für alle, wird durch Views aufgeteilt
-
externes Schema: Views (Sicht auf Datenbestand nach mehreren Dimensionen, SELECT in db)