Alle Lernmaterialien für deinen Kurs Advanced Design and Programming (5-ECTS)

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

Universität Erlangen-Nürnberg

Master of Science Informatik

Prof. Dr.

2024

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
Advanced Design and Programming (5-ECTS) - Cheatsheet
Advanced Design and Programming (5-ECTS) - Cheatsheet Definition und Zweck von Entwurfsmustern Definition: Wiederverwendbare Lösungen für wiederkehrende Probleme in der Softwareentwicklung. Details: Standardisierte Entwürfe für komplexe Softwarestrukturen Verbessern Kommunikation unter Entwicklern Ermöglichen effektive und effiziente Entwicklung Reduzieren Entwicklungszeit und Fehler Beispiele: Si...

Advanced Design and Programming (5-ECTS) - Cheatsheet

Zugreifen
Advanced Design and Programming (5-ECTS) - Exam
Advanced Design and Programming (5-ECTS) - Exam Aufgabe 1) In der Softwareentwicklung spielen Entwurfsmuster eine wesentliche Rolle, um wiederkehrende Probleme effizient zu lösen. Angenommen, Du arbeitest in einem Projekt, das einen Cloud-basierten Dienst implementieren möchte, der eine Vielzahl von Anfragen von Benutzern in Echtzeit bearbeitet. Für dieses Projekt möchtest Du die Wiederverwendbark...

Advanced Design and Programming (5-ECTS) - Exam

Zugreifen

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

Was ist die Definition und der Zweck von Entwurfsmustern?

Welcher Vorteil wird durch standardisierte Entwürfe für komplexe Softwarestrukturen erzielt?

Welche der folgenden Entwurfsmuster sind Beispiele für wiederverwendbare Lösungen in der Softwareentwicklung?

Was ist ein Singleton-Design-Pattern?

Wie funktioniert das Factory-Design-Pattern?

Erklären Sie das Observer-Design-Pattern.

Was betonen die Prinzipien und Werte des Agilen Manifests?

Welches Element gibt der Zusammenarbeit mit dem Kunden Vorrang?

Wie viele Prinzipien umfasst das Agile Manifest?

Was versteht man unter 'Code-Smells' in der Programmierung?

Welche Tools werden häufig zur Erkennung von Code-Smells eingesetzt?

Welche Ziele verfolgt die Identifikation von Code-Smells?

Was ist der Red-Green-Refactor-Zyklus in TDD?

Welcher Vorteil resultiert aus TDD für die Code-Qualität?

Welche Rolle spielt TDD bei der kontinuierlichen Integration?

Was versteht man unter modularen Designprinzipien?

Welches Prinzip bezieht sich auf die Minimierung der Abhängigkeiten zwischen Modulen?

Welches Prinzip ermöglicht die einfache Erweiterung oder Veränderung von Modulen?

Was fördert die Verwendung von Schnittstellen und Abstraktionen im Systemdesign?

Welche Klasse kann sowohl abstrakte als auch konkrete Methoden enthalten?

Was enthält ein Interface?

Was prüfen effektive Unit-Tests?

Welche Methode wird verwendet, um Abhängigkeiten von externen Systemen zu vermeiden?

Warum sind kurze, prägnante Tests wichtig?

Weiter

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

01
01

Entwurfsmuster

Entwurfsmuster (Design Patterns) sind bewährte Lösungen für wiederkehrende Entwurfsprobleme in der Softwareentwicklung. Im Kurs wirst Du die wichtigsten Entwurfsmuster kennenlernen und deren Anwendungen in echten Projekten verstehen.

  • Definition und Zweck von Entwurfsmustern
  • Klassifizierung in Erzeugungsmuster, Strukturmuster und Verhaltensmuster
  • Wichtige Design Patterns wie Singleton, Factory, Observer und Strategie
  • Anwendungsbeispiele und Implementierungen in verschiedenen Programmiersprachen
  • Best Practices und häufige Fallstricke bei der Verwendung von Entwurfsmustern
Karteikarten generieren
02
02

Agile Softwareentwicklung

Agile Softwareentwicklung ist ein iterativer Ansatz, der Flexibilität und kontinuierliche Verbesserung in den Entwicklungsprozess integriert. Du lernst die Prinzipien und Methoden agiler Entwicklung kennen und wie man sie in Projekten effektiv anwendet.

  • Prinzipien und Werte des Agilen Manifests
  • Überblick über agile Methoden wie Scrum und Kanban
  • Iterative und inkrementelle Entwicklungsprozesse
  • Rollen und Verantwortlichkeiten in einem agilen Team
  • Werkzeuge und Techniken zur Unterstützung der agilen Entwicklung
Karteikarten generieren
03
03

Refactoring-Techniken

Refactoring ist der Prozess der Verbesserung des internen Codes ohne dessen externes Verhalten zu ändern. Der Kurs behandelt die Notwendigkeit und die Methoden des Refactorings, um die Qualität und Wartbarkeit des Codes zu erhöhen.

  • Bedeutung und Ziele des Refactorings
  • Identifikation von Code-Smells
  • Grundlegende Refactoring-Techniken wie Extrahieren von Methoden und Klassen
  • Automatisierte Refactoring-Werkzeuge
  • Best Practices für kontinuierliches Refactoring
Karteikarten generieren
04
04

Testgetriebene Entwicklung (TDD)

Testgetriebene Entwicklung (TDD) ist eine Methode, bei der Tests geschrieben werden, bevor der eigentliche Code implementiert wird. Du lernst, wie TDD die Qualität und Verlässlichkeit des Codes verbessern kann.

  • Grundprinzipien und Vorteile von TDD
  • Der Red-Green-Refactor-Zyklus
  • Schreiben effektiver Unit-Tests
  • Nutzung von Testframeworks wie JUnit oder pytest
  • Integrations- und Systemtests in einem TDD-Ansatz
Karteikarten generieren
05
05

Erweiterbares Softwaredesign

Erweiterbares Softwaredesign ermöglicht die einfache Anpassung und Erweiterung von Software, ohne bestehende Funktionalitäten zu beeinträchtigen. Der Kurs führt Dich in die Konzepte und Techniken ein, die dafür notwendig sind.

  • Prinzipien des modularen Designs
  • Verwendung von Schnittstellen und Abstraktionen
  • Strategien zur Förderung der Wiederverwendbarkeit von Code
  • Konfigurationsmanagement und Versionskontrolle
  • Design von Plug-in-Systemen und Erweiterungspunkten
Karteikarten generieren

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

Advanced Design and Programming (5-ECTS) an Universität Erlangen-Nürnberg - Überblick

Im Rahmen des Studiengangs Informatik bietet die Universität Erlangen-Nürnberg die Vorlesung 'Advanced Design and Programming' an, die 5 ECTS-Punkte umfasst. Dieser Kurs ermöglicht es Dir, tiefgehende Kenntnisse in fortgeschrittener Softwareentwicklung zu erlangen und praxisnah anzuwenden. Der Kurs kombiniert theoretische Grundlagen mit praktischen Übungen, um ein umfangreiches Verständnis für moderne Programmiermethoden und Designkonzepte zu vermitteln.

Wichtige Informationen zur Kursorganisation

Kursleiter: Prof. Dr.

Modulstruktur: Das Modul besteht aus Vorlesungen und praktischen Übungen. Insgesamt sind es etwa 4 Stunden pro Woche für Vorlesungen und 2 Stunden für Übungen.

Studienleistungen: Am Ende des Kurses gibt es eine schriftliche Prüfung. Darüber hinaus müssen mehrere Projekte und Programmieraufgaben während des Semesters abgeschlossen werden.

Angebotstermine: Der Kurs wird jedes Wintersemester angeboten.

Curriculum-Highlights: Entwurfsmuster, Agile Softwareentwicklung, Refactoring-Techniken, Testgetriebene Entwicklung, Erweiterbares Softwaredesign

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 Master of Science Informatik

93182 Mainframe Programmierung II Kurs ansehen
Advanced Deep Learning Kurs ansehen
Advanced Design and Programming (5-ECTS) Kurs ansehen
Advanced Game Physics Kurs ansehen
Advanced Mechanized Reasoning in Coq Kurs ansehen
Advanced Networking LEx Kurs ansehen
Advanced Programming Techniques Kurs ansehen
Advanced Simulation Technology Kurs ansehen
AI-1 Systems Project Kurs ansehen
AI-2 Systems Project Kurs ansehen

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

Kostenfrei loslegen