Alle Lernmaterialien für deinen Kurs Advanced Design and Programming

Egal, ob Zusammenfassung, Altklausur, Karteikarten oder Mitschriften - hier findest du alles für den Studiengang Bachelor of Science Informatik

Universität Erlangen-Nürnberg

Bachelor of Science Informatik

Prof. Dr.

2025

So erstellst du deine eigenen Lernmaterialien in Sekunden

  • Lade dein Vorlesungsskript hoch
  • Bekomme eine individuelle Zusammenfassung und Karteikarten
  • Starte mit dem Lernen

Lade dein Skript hoch!

Zieh es hierher und lade es hoch! 🔥

Jetzt hochladen

Die beliebtesten Lernunterlagen deiner Kommilitonen

Jetzt hochladen

Bereit für die Klausur? Teste jetzt dein Wissen!

1/24

Was stellt das Singleton-Muster sicher?

1/24

Was ist das Hauptmerkmal der Factory Method?

1/24

Was ermöglicht die Abstract Factory?

1/24

Was ist das Observer-Verhaltensmuster?

1/24

Welche Methoden gehören typischerweise zum Observer-Verhaltensmuster?

1/24

Was sind Vorteile des Observer-Verhaltensmusters?

1/24

Was versteht man unter dem Diamond Problem in der Vererbung?

1/24

Was ist der Hauptunterschied zwischen abstrakten Klassen und Interfaces?

1/24

Was ist Polymorphie in der OOP?

1/24

Was ermöglicht die Verwendung von Generics in der Programmierung?

1/24

Wie sieht die Syntax für einen Lambda-Ausdruck aus?

1/24

Welches Beispiel zeigt die Verwendung von Generics?

1/24

Was ist das Ziel von Synchronisationstechniken in der parallelen Programmierung?

1/24

Welche Synchronisationstechnik verhindert den gleichzeitigen Zugriff auf eine Ressource?

1/24

Welche Technik wird verwendet, um Deadlocks zu vermeiden, indem keine Locks verwendet werden?

1/24

Was ist eine Schichtenarchitektur?

1/24

Welche Vorteile bieten Mikroservices?

1/24

Was ist ein Nachteil der Mikroservices-Architektur?

1/24

Was ermöglichen automatische Testframeworks in der Softwareentwicklung?

1/24

Welche Vorteile bieten automatisierte Testframeworks?

1/24

Welche Frameworks sind für verschiedene Programmiersprachen populär?

1/24

Was ist der primäre Zweck des Refaktorisierens?

1/24

Nenne ein Beispiel für einen Code-Smell.

1/24

Welche Tools können zur Erkennung von Code-Smells verwendet werden?

Weiter

Diese Konzepte musst du verstehen, um Advanced Design and Programming an der Universität Erlangen-Nürnberg zu meistern:

01
01

Design Patterns

Dieser Abschnitt behandelt wiederverwendbare Lösungen für häufig auftretende Probleme innerhalb eines bestimmten Kontexts in der Softwareentwicklung.

  • Definition und Bedeutung von Design Patterns
  • Unterschiedliche Kategorien wie Erzeugungsmuster, Strukturmuster und Verhaltensmuster
  • Beispiele von klassischen Design Patterns wie Singleton, Observer und Factory
  • Einsatzmöglichkeiten und Vorteile im Softwareentwicklungsprozess
  • Konkrete Anwendung in bestehenden Softwareprojekten
Karteikarten generieren
02
02

Fortgeschrittene Programmiertechniken

Hier werden fortgeschrittene Techniken und Methoden vorgestellt, um die Effizienz und Qualität der Softwareentwicklung zu verbessern.

  • Erweiterte Konzepte der objektorientierten Programmierung
  • Generics und Lambda-Ausdrücke
  • Koordinations- und Synchronisationstechniken in paralleler Programmierung
  • Dynamische Datentypen und Metaprogrammierung
  • Optimierung und Performance-Tuning von Softwareanwendungen
Karteikarten generieren
03
03

Software Architekturen

Der Abschnitt Lehrer die Prinzipien und Muster, die zur Definition der Struktur und Organisation von Software-Systemen verwendet werden.

  • Grundlagen der Softwarearchitektur und ihre Bedeutung
  • Unterschiedliche Architekturstile wie Schichtenarchitektur, Mikroservices und eventgesteuerte Architekturen
  • Bedeutung von modularer und komponentenbasierter Entwicklung
  • Werkzeuge und Methoden zur Dokumentation von Softwarearchitektur
  • Evaluierung und Validierung von Architekturen
Karteikarten generieren
04
04

Testverfahren

In diesem Abschnitt werden verschiedene Testmethoden und Best Practices zur Sicherstellung der Qualität von Softwareanwendungen vorgestellt.

  • Arten von Softwaretests: Unit-Tests, Integrationstests, Systemtests und Abnahmetests
  • Automatisierte Testverfahren und Testframeworks
  • Entwicklung und Verwaltung von Testfällen
  • Kontinuierliche Integration und Testen
  • Werkzeuge zur Unterstützung des Testprozesses
Karteikarten generieren
05
05

Refactoring

Dieser Abschnitt behandelt die Techniken zur Verbesserung der internen Struktur von bestehendem Code, ohne dessen externes Verhalten zu ändern.

  • Definition und Zweck von Refactoring
  • Erkennen von Code-Smells und technischen Schulden
  • Refactoring-Techniken und -Muster wie Extrahieren von Methoden und Ersetzen von bedingter Logik
  • Werkzeuge zur Unterstützung des Refactorings
  • Best Practices und Prinzipien für effektives Refactoring
Karteikarten generieren

Alles Wichtige zu diesem Kurs an der Universität Erlangen-Nürnberg

Advanced Design and Programming an Universität Erlangen-Nürnberg - Überblick

Im Rahmen des Studiengangs Informatik wird an der Universität Erlangen-Nürnberg die Vorlesung 'Advanced Design and Programming' angeboten. Diese Vorlesung richtet sich an fortgeschrittene Studierende und vermittelt tiefgehende Kenntnisse im Bereich des Software-Designs und der Programmierung. Du lernst, wie verschiedene Design Patterns angewendet werden, fortgeschrittene Programmiertechniken, die Struktur von Software Architekturen sowie Testverfahren und Refactoring.

Wichtige Informationen zur Kursorganisation

Kursleiter: Prof. Dr.

Modulstruktur: Die Vorlesung besteht aus wöchentlichen Vorträgen, zusätzlichen Übungen und Projektarbeiten.

Studienleistungen: Die Leistung wird durch eine Klausur am Ende des Semesters bewertet.

Angebotstermine: Wintersemester

Curriculum-Highlights: Design Patterns, Fortgeschrittene Programmiertechniken, Software Architekturen, Testverfahren, Refactoring

So bereitest Du Dich optimal auf die Prüfung vor

Beginne frühzeitig mit dem Lernen, idealerweise schon zu Beginn des Semesters, um Dir die nötige theoretische Basis anzueignen.

Nutze verschiedene Ressourcen, wie Bücher, Übungsaufgaben, Karteikarten und Probeklausuren, um dein Wissen zu vertiefen.

Schließe Dich Lerngruppen an und tausche Dich mit anderen Studierenden aus, um gemeinsam Lösungsstrategien zu entwickeln.

Vergiss nicht, regelmäßige Pausen einzulegen und in diesen Zeiten komplett abzuschalten, um eine Überbelastung zu vermeiden.

Nutzung von StudySmarter:

Nutzung von StudySmarter:

  • Erstelle Lernpläne und Zusammenfassungen
  • Erstelle Karteikarten, um dich optimal auf deine Prüfung vorzubereiten
  • Kreiere deine personalisierte Lernerfahrung mit StudySmarters AI-Tools
Kostenfrei loslegen

Stelle deinen Kommilitonen Fragen und bekomme Antworten

Melde dich an, um der Diskussion beizutreten
Kostenlos anmelden

Sie haben bereits ein Konto? Login

Entdecke andere Kurse im Bachelor of Science Informatik

74790 Strategisches ManagementKurs ansehen
Advanced Design and ProgrammingKurs ansehen
Advanced Mechanized Reasoning in CoqKurs ansehen
Advanced Programming TechniquesKurs ansehen
AlgebraKurs ansehen
Algebra des ProgrammierensKurs ansehen
Algebraische und Logische Aspekte der AutomatentheorieKurs ansehen
Algorithmen und DatenstrukturenKurs ansehen
Algorithmik kontinuierlicher SystemeKurs ansehen
Allgemeine Biologie IKurs ansehen

Lerne jederzeit. Lerne überall. Auf allen Geräten.

Kostenfrei loslegen