TU Wien:Web Application Engineering & Content Management VU (Mairhofer, Mayerhofer)/Online Prüfung 2020 10 06

Aus VoWi
Zur Navigation springen Zur Suche springen

Die Prüfung fand im Tuwel statt, dauerte 60 Minuten und ich denke die Fragen wurden aus einem Fragenpool zufällig zugeordnet. (Währenddessen war man die ganze Zeit per Zoom und Webcam verbunden und wurde von 2 Assisten/Tutoren "beobachtet":

10 Fragen / 60 Minuten Zeit und pro Frage 4 Punkte

  • Erkläre die Docker Begriffe (Container, Image, Dockerfile, Registry)
    • Container

Aktive Instanz eines Images

    • Image

Auslieferbares Speicherabbild eines Containers Besteht aus einzelnen Layers Unterstützt Tags

    • Dockerfile

Anleitung zur Erstellung eines Images

    • Registry

Zentraler Speicher für fertige Images, diese können von anderen Benutzern abgeholt werden

  • Welche Typen von Web-Frameworks gibt es. Was hat sich etabliert die letzten Jahre. Nenne Beispiele
    • Statische Webseiten
    • Multi-Page Applications (MPA)
    • Plug-in basierte Rich Internet Applications (RIA)
    • Single-Page Applications (SPA)
  • Wie funktioniert Event-Driven Server? Wann gut wann schlecht
    • Asynchrones I/O -> beste Performance bei I/O-lastigen Anwendungen wie Webservern
    • Nur ein Prozess/Thread wird verwendet
    • Proactor-Pattern -> Aufrufer wird benachrichtigt sobald Anfrage abgearbeitet wurde
    • Single-Threaded -> Es läuft entweder Event-Loop oder Programmcode
  • Was ist der Unterschied zwischen Usability Tests und Usability Inspektion
    • Usability Tests

Testpersonen erfassen Fehler die in der Praxis auftreten indem vordefinierte Aufgaben bearbeitet werden Usability Experten beobachten und analysieren Ergebnisse zur Verbesserung

    • Usability Inspektionen

Experten versetzen sich in Rolle von Benutzer und evaluieren Usability anhand von Erfahrungen und Richtlinien

  • Nenne und erkläre 2 wesentliche Unterschiede zwischen Angular und React

Angular ist Framework - React eine Library (kein Framework) Angular hat 2-way databinding - React unidirektionalen Dataflow

  • Erkläre die Rollen ID-Provider und Service Provider

ID-Provider handhabt Authentifizierung von Usern, stellt Access Token zur Verfügung Service Provider lässt vom User Agent gesendeten Auth-Code und Access Token von ID-Provider überprüfen

  • Was ist CI? Was ist CD? Zusammenhang?
    • Continuous Integration

Es werden Tests zur Integration einzelner Komponenten ausgeführt, Code-Metriken erfasst

    • Continuous Deployment

Änderungen werden nach erfolgreichem CI Durchlauf in die Prod-Umgebung deployed

  • Was versteht man unter dem Virtual DOM

Änderungen am DOM sind zwar effizient, bewirken allerdings Neuberechnung von CSS, Layout und Rendering des Inhaltes -> langsam Virtual DOM dient als Proxy um alle Änderungen innerhalb derselben Event-Loop mit einem Repaint zu aktualisieren

  • Was sind die Workflow steps von TDD

1. Automatisierten Test erstellen der fehlschlägt (ROT) 2. Implementierung um Test zu erfüllen (GRÜN) 3. Refactoring

  • Was sind Rich Internet Applications, nenne X eigenschaften (ich glaube es waren 4)

Haben Eigenschaften von Desktop- u. Host-Anwendungen

    • Rich Interactions (Drag & Drop)
    • Zugriff auf lokale Geräte
    • Browser-Datenbank
    • Client-seitiger Business-Code
  • Was ist der Unterschied zwischen Angular und React (mind. 2)
  • Was ist der Unterscheid zwischen Sketching und Prototyping
    • Sketching

explorativ, soll Idee erzeugen ohne großes Investment -> nicht sehr detailliert

    • Prototyping

aufwändiger, mehr investiert -> viele Details

  • Welche 2 Methoden gibt es um eine Komponente in React zu schreiben

Functional-Components Class-Components

  • Welche 2 wichtigsten Verbesserungen können die Performance verbessern (Irgendwie so. ich glaub das Compression/Caching war gefragt)
  • MC Frage zu Docker. Docker virtualisiert Hardware, Alle Layer sind immutable ...
  • Nenne 2 Unterschiede von SAML und OIDC

SAML ist älter als OIDC OIDC bietet REST-Schnittstellen

  • Welche Arten von Browser Caching gibt es?
    • Expiration model (optimistisch)

Server-Requests vermeiden, Cache-control max-age

    • Validation model (pessimistisch)

Requests re-validieren, Conditional Requests