SA3

...

...


L. H.
Flashcards
8
Students
1
Language
German
Category
Computer Science
Level
Other
Created / Updated
14.07.2016 / 14.07.2016

Flashcards

Welche Metriken beinhaltet die statische Code-Analyse?

  • Manuelle Code Reviews
  • Automatisierte Code Reviews

Wie ist ein Framework definiert?

  • wiederverwendbare Softwareplattform 
  • Steuerung des Gesamtprogrammablaufs durch Framework vorgegeben
  • umgibt die Schichten

Was ist der Unterschied zwischen einer Library und einem Framework?

  • Library: Bereitstellung/Wiederverwendung v. Funktionalitäten; keine Auswirkung auf Ausfuhrlogik
    —> Sammlung von Implementierungen & Algorithmen (liegt unter den Schichten)
  • Framework: trifft Entscheidungen; Steuerung des Programmablaufs durch F. vorgegeben
    —> wiederverwendbare Softwareplattform (umgibt die Schichten)

Nennen Sie Gründe für den Einsatz von Schichten in der Softwarearchitektur?

  • Zusammenfassen verwandter Funktionalität
  • Kontrolle der Abhängigkeiten
  • Komplexität der Abhängigkeiten wird reduziert
  • geringere Kopplung & höherer Kohäsion der einzelnen Schichten
  • Zyklen im Abhängigkeitsgraphen werden vermieden
  • besseres Verständnis und Wartung
  • Austauschbarkeit

Nennen  Sie die 4 wichtigsten Prinzipen der Schichtenarchitektur.

  • In „Bottom“-Schicht: Abhängigkeiten zwischen Klassen nur innerhalb der Schicht
  • In folgenden Schichten: Abhängigkeiten zwischen Klassen nur innerhalb oder nach unten
  • Die oberste Schicht muss leicht austauschbar sein
  • Austausch mittlerer Schichten erfordert nur Anpassung darüber liegender Schiten
  • (Zugriff über mehrere Schichten nicht erlaubt)

Beschreiben Sie den Aufbau des „MVC-Pattern“ und geben Sie ein Beispiel für dessen Einsatz.

  • der User triggert den Controller 
  • der Controller verübt die Änderungen am Model
  • das Modell updated die View (das sollte über Observer Pattern geschehen)
  • die View holt sich Daten vom Modell und präsentiert sie dem User
    —> Beispiel: Webanwendungen

Skizzieren Sie den Ablauf von Test-Driven-Development.

  • Erst den Test schreiben; dann den Code implementieren

Wie können Konflikte von Schichten aufgelöst werden?

  • Verschieben von Klassen, Methoden und Funktionen
  • Verschieben von Funktionalität in die richtige Schicht
  • Inversion of Control

Study