O GoConqr está de visual novo! Conte para nós o que você achou.

Flashcards

NPS 09 - Begriffe und Übersichten zu Typsystemen

Tojansen Alemão 9 flashcards

Flashcards do conjunto (9)

  1. 1Was sind die Bestandteile eines Typsystems? (5)- Die Typen selbst, die entweder mittels Typdefinitionen erzeugt oder in der jeweiligen Sprache fest integriert sind
    - Die Möglichkeit, Programmelemente (wie Variablen, Methodenparameter usw.) mittels Typannotation mit einem bestimmten Typ zu deklarieren
    - Regeln, nach denen die Werte von Ausdrücken einem bestimmten Typ zugeordnet werden.
    - Regeln zur Prüfung der Typkorrektheit von Zuweisungen
    - Optional weitere Sprachbestandteile wie typbezogene Operatoren oder eine Reflection API zur Ermittlung und Prüfung von Typinformation zur Laufzeit
  2. 2Was sind die Aufgaben eines Typsystems?- Erkennung von Typverletzungen bei der Übersetzung und Ausführung. Die Typinformation kann dabei als eine
    redundante Information aufgefasst werden, die verhindert, dass Variablen Werte zugewiesen werden, welche die
    betreffende Variable niemals annehmen sollte (sogenannte Typinvarianten). Sie verhindert so die Ausführung von
    Operationen auf den Inhalten dieser Variablen, die entweder unmöglich oder aus programmlogischen Gründen
    nicht sinnvoll ist.
    - Typumwandlung (engl. type conversion), also Umwandlung
    bzw. Beförderung und Degradierung von Typen (engl. type promotion, type demotion)
  3. 3Welche Ausprägungen von Typumwandlung gibt es?- Implizit und explizit
    - Verlustbehaftet oder nicht verlustbehaftet („werterhaltend“). Typerweiterungen (Type Promotion), Typeinschränkungen (Type Demotion).
    - Vordefiniert oder explizit programmiert (benutzerdefiniert). Vordefinierte standard conversions für die elementaren Typen.
    - Mit Prüfung der Umwandlung (bei der Übersetzung oder zur Laufzeit) oder ohne Prüfung.
  4. 4Klassifikation von Typsystemen I: Was unterscheidet dynamische Typisierung und statische Typisierung? Welchen Vorteil besitzt statische Typisierung?Typprüfungen können zur Übersetzungszeit oder zur Laufzeit vorgenommen werden. Im ersten Fall spricht man von statischer Typprüfung, im zweiten von dynamischer Typprüfung. Grundsätzlich sind statische Typprüfungen wünschenswert, da sie
    Laufzeitfehler ebenso wie möglicherweise schwer auffindbare Folgefehler ausschließen.
  5. 5Klassifikation von Typsystemen II: Was unterscheidet starke Typisierung von schwacher Typisierung?Wie streng unterscheidet die Sprache die Typen? Welche Datentypen können
    ineinander umgewandelt werden? Erlaubt sie implizite Typumwandlungen? Erlaubt sie unsichere Typumwandlungen, bei denen z. B. Werte verloren gehen können?
  6. 6Klassifikation von Typsystemen III: Was unterscheidet Explizite Typisierung (explicit typing) von Impliziter Typisierung (implicit typing)?Ob die Typen explizit genannt oder implizit durch Methoden und Attribute impliziert werden.
  7. 7Klassifikation von Typsystemen IV: Was ist optionale Typisierung?Optionale Typ-Annotationen werden zur Unterstützung genutzt und bei der
    Übersetzung geprüft, haben aber letztendlich keine Auswirkungen auf die tatsächliche Umsetzung durch den Compiler zur Laufzeit (nach der Übersetzung „weggefallen“).
  8. 8Was ist nominal Typing?Es zählt der Typ, nicht, was das Objekt kann.
  9. 9Was ist Structural Typing?Es zählt die Struktur, nicht der Typ. ( Ähnlich wie Duck Typing)

Informações

Descrição
FlashCards sobre NPS 09 - Begriffe und Übersichten zu Typsystemen, criado por Tojansen em 20-01-2015.
Criado por
Tojansen
Visualizações
8
Avaliação

Fale Conosco

Sobre o que é sua mensagem?

O que você acha do novo visual?

Você gostou?