1. Lecture Notes 11.11.2025 - Haider Nico

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.3. Generalisierung

  • Vererbungsbeziehung

  • genauer siehe Foliensatz

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.5. Assoziationsklasse

  • Tabelle zwischen zwei Klassen mit " * zu * " Beziehung

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)

3. UML-Diagramm

  • Modell: Abbildung der Realität unter Berücksichtigung eines besonderen Aspekts