Abschlussveranstaltung - Programmierung und Datenbanken, WiSe 24/25 PDF
Document Details
![GladPeachTree1866](https://quizgecko.com/images/avatars/avatar-19.webp)
Uploaded by GladPeachTree1866
Technische Universität Dresden
2024
Dr. Stefan Greulich
Tags
Summary
This document is a presentation for a programming and database lecture. Dr. Stefan Greulich will be covering programming and databases. This event will take place at the Technische Universitaet Dresden.
Full Transcript
Abschlussveranstaltung Programmierung und Datenbanken I Dr. Stefan Greulich Vorlesung/Übung: 3 Doppelstunde – HSZ 004/H Organisatorisches (Vorlesung + Übung) Kalenderwoche Datum...
Abschlussveranstaltung Programmierung und Datenbanken I Dr. Stefan Greulich Vorlesung/Übung: 3 Doppelstunde – HSZ 004/H Organisatorisches (Vorlesung + Übung) Kalenderwoche Datum Feiertage Lehrveranstaltung Dateien zur Verfügung Dateien Datacamp Lesson 42 17.10.2024 XXXX XXXX XXXX XXXX Kick-off und Werbefolien 43 24.10.2024 (Abschlussarbeiten, externe Kick-Off Folien Datacamp - Anfragen u.a.) Variables und 44 31.10.2024 Reformationstag XXXX XXXX Shorts 1, 2 Introduction to Folien Vorlesung # 1 & Python 45 07.11.2024 Vorlesung # 1 Übungsblatt #1 46 14.11.2024 Übung #1 Lösungsblatt # 1 Folien Vorlesung #2 & 47 21.11.2024 Vorlesung # 2 Übungsblatt # 2 Shorts 3 - 5 Schleifen in Python 48 28.11.2024 Übung #2 Lösungblatt # 2 Folien Vorlesung # 3 & 49 05.12.2024 Vorlesung # 3 Übungsblatt # 3 Arrays and 50 12.12.2024 Übung # 3 Lösungsblatt # 3 Shorts 6, 7 DataFrames in 51 19.12.2024 --- Python 52 26.12.2024 Jahreswechsel XXXX XXX 1 02.01.2025 Folien Vorlesung # 4 & 2 09.01.2025 Vorlesung # 4 Classes & Übungsblatt # 4 Shorts 8 - 10 Inheritance 3 16.01.2025 Übung # 4 Lösungsblatt # 4 4 23.01.2025 Gastvortrag Folien Vorlesung # 5 Requests & XXXX 5 30.01.2025 Abschlussveranstaltung XXXX Datenfetcher 6 06.02.2025 Konsultation (On demand) XXXX XXXX 7 13.02.2025 Klausur (Für alte Kernprüfungszeit XXXX XXXX XXXX 8 20.02.2025 Prüfungsordnung) Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 2 Dresden | 30.01.2025 Themen dieser Veranstaltung Recap Vorlesung, Organisatorisches Klausurkonzept Trial Exam Übung, Shorts Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 3 Dresden | 30.01.2025 Organisatorisches für die Studierenden mit ALTER Studienordnung Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 4 Dresden | 30.01.2025 Klausurformat und -termin Wann: 07.02.2024 Wo: PC Pool im Schuman-Bau (SCH a/b 200) Klausurbeginn: 2 Termine 09:20 – 10:50 Uhr & 11:10 – 12:40 Uhr Aufteilung wird heute bekanntgegeben! Einlassschluss 15 Minuten vor Beginn der Klausur Wichtig: Personalausweis und Studentausweis mitbringen. Falls Klausurkollidierung: Nachweis bitte mitbringen Gesamtpunktzahl: 90 Punkte Ein Punkt pro Minute! Studierende mit der NEUEN Studienordnung schreiben erst im SoSe25 !!!!! Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 5 Dresden | 30.01.2025 Georg-Schumann-Bau der TU Dresden Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 6 Dresden | 30.01.2025 Wegweiser EG und 2 OG Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 7 Dresden | 30.01.2025 Themen dieser Veranstaltung Recap Vorlesung, Organisatorisches Klausurkonzept Trial Exam Übung, Shorts Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 8 Dresden | 30.01.2025 Klausurkonzept Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 9 Dresden | 30.01.2025 1/3 1/3 1/3 Multiple Choice Zuordnen Programmieren Alle Inhalte der Vorlesung/Übung sind klausurrelevant! Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 10 Dresden | 30.01.2025 SC-Fragen Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 11 Dresden | 30.01.2025 Zuordnen Zuordnen Auswahl Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 12 Dresden | 30.01.2025 Weitere Hinweise Kommentare Bei Unsicherheiten oder Annahmen nutzen Sie bitte das Kommentarfeld der jeweiligen Aufgabe Hilfsmittel Es sind keine Hilfsmittel erlaubt Wenn Deutsch nicht Ihre Muttersprache ist, können Sie ein von uns kontrolliertes Wörterbuch ohne etwaige Notizen nutzen In diesem Fall erscheinen Sie bitte 45 Minuten vor Start der Prüfung Geräte Bitte verstauen Sie Ihre Uhren und Smartphones in Ihren Taschen, Nachdem 2FA erfolgt ansonsten kann ein Täuschungsversuch vermutet werden. Fragen im Forum Die Deadline für Fragen in Bezug auf die Klausur ist das Datum der letzten Konsultation Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 13 Dresden | 30.01.2025 Themen dieser Veranstaltung Recap Vorlesung, Organisatorisches Klausurkonzept Trial Exam Übung, Shorts Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 14 Dresden | 30.01.2025 Recap Klassen und Grundlagen Was ist ein Computer ? – Von-Neumann Architektur CPU 1. Ein-/Ausgabewerk Regelung der Interaktion zwischen System und Schnittstellen (bspw. User oder andere Systeme) Rechenwerk Steuerwerk 2. Bus-System Verknüpfung der einzelnen Komponenten 3. Rechenwerk Das Rechenwerk führt Rechenoperationen und boolsche Vergleiche/Verknüpfungen durch Bus-System 4. Steuerwerk Das Steuerwerk verschaltet programmrelevante Datenquellen und Komponenten, sowie die Befehlsabfolge 5. Speicherwerk Ein-/Ausgabewerk Speicherwerk Speichert Programme und Daten, welche für das Rechenwerk zugänglich sind Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 17 Dresden | 30.01.2025 Was können Programme sein? Aus unserem Alltag In der Software Entwicklung 1. Formalisierung von Ideen Parteiprogramme Lösen von Aufgaben auf dem Computer mittels 2. Planung von Ereignissen eigener Software beinhaltet alle Teilaspekte aus unserem Alltag. Fernseh/Kino/Theater- Programm 3. Definition von Abfolgen Musikpartitur / Notenblätter Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 18 Dresden | 30.01.2025 Semantische Lücke Menschliche Weltsicht Begriffswelt der Informatik Dinge Daten Handlungen Algorithmen Beschreibungen 0110100010110 Unterschiedliche Sprache bei Mensch‘ und Maschine Probleme bei der Kommunikation Mensch – Maschine Lücke in der Semantik Kommunikation durch Programmiersprache Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 19 Dresden | 30.01.2025 Programmiersprache Definition: def caesar_encrypt(text, shift): encrypted_text = "" for char in text: if char.isalpha(): # Überprüfen, ob das Zeichen ein Buchstabe ist Künstliche, formale Sprache zur ascii_offset = ord('A') if char.isupper() else ord('a') Kommunikation zwischen Menschen und encrypted_text += chr((ord(char) + shift - ascii_offset) Computer (aber auch zwischen Menschen) % 26 + ascii_offset) und Formulierung von Datenstrukturen und else: Algorithmen, die von einem Computer lassen encrypted_text += char # Nicht-Buchstaben unverändert ausgeführt werden können return encrypted_text Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 20 Dresden | 30.01.2025 Datentypen Datentypen Primitive Referenztypen Datentypen Arithmetische Logische Datentypen Datentypen Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 21 Dresden | 30.01.2025 Syntax + Semantik = Programmiersprache Künstliche, formale Sprache zur Kommunikation zwischen Menschen und Computer (aber auch zwischen Menschen) Klassifikation nach der Zeichenart Ikonische Sprachen symbolische Sprachen natürliche Sprachen künstliche Sprachen formale nicht-formale semi-formale Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 22 Dresden | 30.01.2025 Programmiersprachen nach Paradigmen Prozedurale Objektorientierte Funktionale Programmiersprachen Programmiersprachen Programmiersprachen Befehle werden Schritt für Schritt Objekte kommunizieren miteinander Keine Zustände, nur Funktionen ausgeführt Es gibt verschiedene Paradigmen von Programmiersprachen mit unterschiedlichen Konzepten. Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 23 Dresden | 30.01.2025 Morphologie der OOP Programmierung verweisen auf kommunizieren Identität wird abgelegt in Referenzen über Nachrichten sind n ze si t be Zustand realisiert durch Werte en besitz Objekte besitz besitzen als en be Verhalten realisiert durch Methoden variablen Inhalt si t ze n werden zusammen- erzeugen mit können gehören zu gefasst zu Konstruktoren Schnittstellen kapseln r (Interfaces) re n fü inie e d e f b j e kt O Klassen besitzen Attribute werden organisiert in besitzen in Paketen Klassenhierarchien sind (Packages) durch Vererbung können durch Polymorphie Subklassen überschreiben Variablen Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 24 Dresden | 30.01.2025 Verschiedene Projektmanagement-Ansätze Iterative Entwicklung (Agile) Wasserfallansatz Anforderungen Planen Designen Entwurf Überprüfen Entwickeln Implement Überprüfen Implement Testen Wartung Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 25 Dresden | 30.01.2025 Recap – OO-Paradigma Klassen Beschreibungsebene Typ Instanz Klasse Objekt definiert die Menge der hat einen Zustand Eigenschaft möglichen Zustände besitzt mit Werten belegte Systemkriterium Eigenschaften werden in Form Eigenschaften von Attributen definiert definiert die Menge der verhält sich Verhalten möglichen hat ein Verhalten Zustandsveränderungen (Zustandsveränderung) Verhalten wird in Form von Methoden definiert Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 26 Dresden | 30.01.2025 Klassen Klassen sind Baupläne für Objekte. In Python definiert man eine Klasse mit dem Schlüsselwort "class". Eine Klasse kann Attribute und Methoden enthalten: 1. Attribute beschreiben den Zustand eines Objekts (z. B. Farbe, Gewicht, Name). 2. Methoden beschreiben das Verhalten eines Objekts (z. B. fahren, springen, rechnen). Python ist eine objektorientierte Sprache, was bedeutet, dass Klassen und Objekte zentrale Bausteine der Programmierung sind. Das Konzept hilft, den Code modular, wiederverwendbar und einfacher zu verstehen zu gestalten. Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 27 Dresden | 30.01.2025 Mehrere Parties ? Objekte mit Datenkapselung ! Definition: Die objektorientierung von Programmen ermöglicht eine dynamische Anpassung von verhalten des Programms (bspw. Änderung eines Termins). Genauer bedeutet es, das Eigenschaften, Attributen, Zustände und Identitäten geändert warden können, aber die Zusammensetzung des Objektes nicht. Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 28 Dresden | 30.01.2025 Vorteile der Kapselung Erhöhte Wartbarkeit Erleichterte Modularität Verbesserte Benutzung Sicherheit Da interne Benutzer müssen sich nur Module sind durch Indem der Zugriff auf Implementierungsdetails auf die Schnittstelle Kapselung besser interne Daten und “versteckt” sind, kann die konzentrieren und nicht auf voneinander getrennt und Methoden eingeschränkt Implementierung leichter Implementierungsdetails. können unabhängig wird, kann die Sicherheit geändert und gewartet erweitert werden. verbessert werden. werden. Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 29 Dresden | 30.01.2025 UMLs Unified Modeling Language (UML) Definition: Modellierungsmethode Sprache und Notation zur... Spezifikation, Konstruktion, Sprachbasiertes Vorgehensmodell Visualisierung und Metamodell Dokumentation... von Modellen für Softwaresysteme Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 31 Dresden | 30.01.2025 Zweck von UML Standardisierung und UML ermöglicht den Austausch Vereinheitlichung von UML definiert ein Metamodell von Modellen zwischen Tools Softwaremodellierung und Teams UML dient dazu, eine einheitliche einen sinnvollen Austausch von Durch UML-Standards wird die Notation und Semantik für die visuelle, Modelldaten zwischen Tools zu erstellen. Kompatibilität von objektorientierte Modellierung von Modellierungswerkzeugen erhöht und Softwaresystemen vorzugeben. der Modellaustausch erleichtert. Zusammenfassend dient UML dazu, die Modellierung von Softwaresystemen zu standardisieren und den Austausch von Modellen zu ermöglichen. Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 32 Dresden | 30.01.2025 Übersicht - Software Lebenszyklus UML Planung Analyse Entwurf Implement Test Einführung Wartung OOP + Python Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 33 Dresden | 30.01.2025 Einige Arten von UML Diagramme Klassendiagramme Komponentendiagramme Aktivitätsdiagramme Sie zeigen die Struktur und Sie zeigen Abhängigkeiten von Sie beschreiben Beziehungen zwischen Klassen. Softwarekomponenten. Geschäftsprozesse und Abläufe. Anwendungsfalldiagramme Sequenzdiagramme Zustandsdiagramme Sie zeigen Interaktionen Sie illustrieren Interaktionen Sie beschreiben Zustände und zwischen Akteuren und zwischen Objekten. Übergänge von Objekten. Anwendungsfällen. Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 34 Dresden | 30.01.2025 34 Klassendiagramm – Vererbung Dienstleister Definition: Attributname name: str telefon: str Die Ursprungsklasse definiert: bilder: ImageIcon[ ] Attribute Pakete + ankunft() Typen + bezahlen() Rückgabewerte UML Funktionen/Methoden - Namen Darstellung DJ Bei einer Vererbung übernimmt die erbende Klasse die Eigenschaften von der (Super) musik: Liste [ ] Ursprungsklasse. Die erbende Klasse kann Veränderungen enthalten. + pause() Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 35 Dresden | 30.01.2025 Sequenzdiagramm - Übersicht Definition Vorteil Ein Sequenzdiagramm ist eine Art Mit einem Sequenzdiagramm wird die genaue Funktionsweise von Interaktionsdiagramm in der Unified Modeling eines aktuellen oder zukünftigen Szenarios zu planen und zu Language (kurz: UML) und bildet die Interaktion zwischen verstehen einer Gruppe von Objekten sowie die Reihenfolge ab. Verwendung Beziehungen Ein Anwendungsszenario ist ein Diagramm, das potenzielle Möglichkeiten zur Nutzung Ihres Systems abbildet. Auf diese Werden durch Lebenslinien dargestellt und dienen zur Weise können Sie sicherstellen, dass Sie sich mit der Logik Beschreibung des Prozesses sämtlicher Anwendungsszenarien für das System befasst haben. 36 Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 36 Dresden | 30.01.2025 Übersicht des Abstraktionslevels von Programmiersprachen Hardware Geschwindigkeit Binärcode Assembler Verständlichkeit Hochsprachen Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 37 Dresden | 30.01.2025 Verzweigung Einseitige Verzweigung Umsetzung einer Entscheidung im Aktivitätsdiagramm Entweder-Oder (XOR) if (bedingung) :... bedingung Alternative A... true false else :... Alternative B Alternative A Alternative B... Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 38 Dresden | 30.01.2025 Übersicht der Eigenschaften von Datenstrukturen List Tupel Set Dictionary Datenstruktur Ein/Mehr- Ein/Mehr- Ein- Paarespeicherung dimensional dimensionale dimensionale Notation [] () {} {} Duplikate erlaubt erlaubt nicht erlaubt nicht erlaubt Initialisierung list() tuple() set() dict() Veränderbarkeit Erlaubt nicht erlaubt Erlaubt Erlaubt Sortierung ja ja nein ja Beispiel [1,2,3] (1,2,3) {1,2,3} {„a“: 1, „b“: 2, „c“: 3} Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 39 Dresden | 30.01.2025 Softwareergonomie Begriffsdefinition Beschäftigt sich mit der Mensch- Computer-Interaktion Im speziellen mit der Gestaltung der Teile eines Anwendungssystems, die an der Benutzungsoberfläche wirksam werden EBERLEH E.; OBERQUELLE H.; OPPERMANN R. (Hrsg.) Einführung in die Software-Ergonomie. Walter de Gryter, Berlin et. al., 1994 Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 40 Dresden | 30.01.2025 Klassen Vererbung & Daten Verzweigung Einseitige Verzweigung Umsetzung einer Entscheidung im Aktivitätsdiagramm Entweder-Oder (XOR) if (bedingung) :... bedingung Alternative A... true false else :... Alternative B Alternative A Alternative B... Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 42 Dresden | 30.01.2025 Verzweigung mit Verknüpfungen Definition: if Bedingung1 and Bedingung2: # Wird nur ausgeführt, wenn Bedingung1 UND Bedingung2 wahr sind Logische Verknüpfungen ermöglichen es uns, if Bedingung1 or Bedingung2: mehrere Bedingungen zu einer einzigen # Wird ausgeführt, wenn Bedingung1 ODER Aussage zu kombinieren, sodass komplexe Bedingung2 wahr ist Entscheidungsprozesse in der if not Bedingung1: Programmierung abbildbar werden. # Wird ausgeführt, wenn Bedingung1 NICHT wahr ist if (Bedingung1 and Bedingung2) or (not Vorteil: Bedingung3): # Wird ausgeführt, wenn Bedingung1 und Die Lesbarkeit von Algorithmen und die Bedingung2 wahr sind ODER Bedingung3 NICHT Genauigkeit von Datenabfragen werden oft wahr ist durch die geschickte Anwendung logischer if (temperatur > 20 and sonnig) or (not Verknüpfungen wie AND, OR und NOT arbeitstag): verbessert. print("Zeit für ein Picknick!") Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 43 Dresden | 30.01.2025 Schleifen Zweck Anweisungen wiederholt ausführen Vermeidung von dupliziertem Quelltext while (bedingung erfüllt) : Bestandteile... Schleifenbedingung (Ausdruck, Ausdrücke) Funktion... Schleifenrumpf oder –körper (Anweisungsblock) for(bis zählvariable erreicht):... Arten Funktion... while-Schleife (kopfgesteuerte Schleife) for-Schleife (ausdrucksorientierte oder Zählschleife) Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 44 Dresden | 30.01.2025 Schleifen – Übersicht While Do-While-Schleife Führt Anweisungen so lange Schleife, die mindestens aus, wie eine angegebene einmal ausgeführt wird, bevor Bedingung wahr ist die Bedingung geprüft wird Schleifen For-Schleife Iteriert über jedes Element einer Sequenz (wie eine Liste oder ein Tupel), um für jedes Element eine Gruppe von Anweisungen auszuführen Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 45 Dresden | 30.01.2025 Pakete # Daten laden und verarbeiten Definition: filme = [] with open('filme.csv', 'r') as file: for line in file: filme.append(line.strip().split(',')) # Die ersten fünf Einträge anzeigen import pandas as pd for film in filme[:5]: # Daten ladenprint(film) # Durchschnittliche Bewertung aller Filme berechnen df = pd.read_csv('filme.csv') gesamtbewertung = 0 # Die ersten fünf Einträge anzeigen anzahl_filme = 0 print(df.head()) for film in filme: Python-Pakete und -Bibliotheken erleichtern bewertung = float(film) # Angenommen, die Bewertung ist an vierter Stelle # Durchschnittliche Bewertung aller Filme berechnen die Entwicklung komplexer Anwendungen, gesamtbewertung += bewertung durchschnittliche_bewertung = df['Bewertung'].mean() erhöhen die Produktivität der anzahl_filme += 1 durchschnittliche_bewertung = gesamtbewertung / anzahl_filme print(f"Durchschnittliche Bewertung: {durchschnittliche_bewertung}") Entwickler:innen und ermöglichen es, print(f"Durchschnittliche Bewertung: {durchschnittliche_bewertung}") # Filme nach Erscheinungsjahr # Filme gruppieren nach Erscheinungsjahr gruppieren und zählen und zählen moderne Anforderungen in Bereichen wie filme_pro_jahr filme_pro_jahr = {} = df.groupby('Erscheinungsjahr').size() Datenwissenschaft, Webentwicklung und for film in filme: print(filme_pro_jahr) jahr = film # Angenommen, das Erscheinungsjahr ist an zweiter Stelle künstlicher Intelligenz effizient zu erfüllen. if jahr in filme_pro_jahr: filme_pro_jahr[jahr] += 1 else: filme_pro_jahr[jahr] = 1 print(filme_pro_jahr) Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 46 Dresden | 30.01.2025 Attribute und Methoden Theoretische Erklärung: Attribute und Methoden sind die Bausteine von Klassen: Attribute sind Variablen, die den Zustand oder die Eigenschaften eines Objekts speichern. Methoden sind Funktionen, die das Verhalten oder die Aktionen eines Objekts definieren. Attribute: Es gibt zwei Arten von Attributen: Instanzattribute: Sie gehören zu einer spezifischen Instanz einer Klasse und werden oft im Konstruktor "init" definiert. Klassenattribute: Sie sind für alle Instanzen einer Klasse gleich und werden direkt in der Klasse definiert. Methoden: Methoden sind Funktionen, die in einer Klasse definiert sind. Sie erhalten automatisch die Instanz als erstes Argument ("self"). Mit "self" können Attribute und andere Methoden der Klasse aufgerufen werden. Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 47 Dresden | 30.01.2025 Polymorphismus Polymorphismus bedeutet "viele Formen" und erlaubt es, dass dieselbe Methode in verschiedenen Klassen unterschiedlich implementiert wird. Es wird häufig in Kombination mit Vererbung verwendet, um flexible und erweiterbare Programme zu schreiben. Vorteile: 1. Reduziert die Abhängigkeit vom spezifischen Typ eines Objekts. 2. Erleichtert die Erweiterbarkeit durch Hinzufügen neuer Klassen Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 48 Dresden | 30.01.2025 Themen dieser Veranstaltung Recap Vorlesung, Organisatorisches Klausurkonzept Trial Exam Übung, Shorts Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 49 Dresden | 30.01.2025 Probeklausur (06.02.2025) – Digital Vorort oder später zu Hause Zugang erst am 06.02.2025 bis 22:00 Uhr https://exam.zih.tu-dresden.de/opal/auth/RepositoryEntry/867139593?7 Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 50 Dresden | 30.01.2025 Bevor Sie gehen…. Wenn Sie eine alte Studienordnung haben, überprüfen Sie bitte JETZT, ob Sie eine Klausurkohorte am 07.02.2025 zugewiesen bekommen haben! Wenn nicht, melden Sie sich DRINGEND nach der Vorlesung oder über [email protected] Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 51 Dresden | 30.01.2025 Vielen Dank für die Aufmerksamkeit! Dr. Stefan Greulich Abschlussveranstaltung – Programmierung und Datenbanken Dr. Stefan Greulich Folie 52 Dresden | 30.01.2025