Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
17 Cards in this Set
- Front
- Back
Join Point Selections: Definition
|
Sprachkonstrukte, um bestimmte arten von Join Points auszuwählen
- Zur Verfügungstellen von unterscheidbaren Charakteristiken und Kombinationskonstrukte - Sollten von konkreten Sourcecode Elementen abstrahieren ( &&, ||m *,+) |
|
Join Point Selections: Überblick
|
Join Point Properties
Join Point Adressing fragile Pointcuts |
|
Join Point Selections: Pointcut Language
|
beschreibt Join-Point Properties und Adressierungsmechanismen (Quasi Querylanguage wie SQL)
sinnvolle/wiederverwendbare Abstraktionen sollte stabile,allgemeine,komponiernbare Selectionskriterien nutzen |
|
Join Point Selections: fragile pointcuts
|
lexikalisches Crosscutting
syntaktisches Crosscutting Join Point Selection ist mit Syntax verbunden |
|
Join Point Selections: Enumeration-based Crosscutting
|
Multiple Selection mit multipler Code-Repräsentation
Benötigt eine Aufzählung der Elemente |
|
Join Point Selections: Unterschied zwischen Join Point Adressing und Properties
|
Property = unterscheidbare Charakteristik
Adressing: Mittel um Property zu adressieren |
|
Join Point Properties: Dimensions
|
Dynamicity
Directness Locality Application Progress |
|
Join Point Properties: Dynamicity Dimension
|
Parameter Type kann erst bestimmt werden wenn der join point auftritt.
-> sinnvolle Unterscheidungschrakteristik - beschreibt ob das Property statisch am Join Point Shadow extrahiert werden kann. Wenn es statisch beschrieben werden kann es zur Laufzeit Zeit sparen und ist static - direkt aus dem code ableitbar dynamisch - runtime Infomation benötigt |
|
Join Point Properties: Dynamicity und Join Point Model
|
Bei dynamischem Join Point Model wird mindestens eine dynamische Eigenschaft benötigt
Die Existenz statischer eigenschaften impliziert kein statisches Model. |
|
Join Point Properties: Directness of Property Correspondence
|
Direkt: Parameter typ ist direkt aus der Applikation verfügbarm keine Berechnung oder Abstraktion notwendig
Indirekt/Abstrakt: Zusätzliche Berechnungen und Abstraktionen notwendig |
|
Join Point Properties: Locality
|
Lokal: Ableitbar wenn lokale Informationen am Join Point Verfügbar sind
Nicht-lokal: Die informationen, die benötigt werden sind in einem lokalen Kontext nicht verfügbar. Locality ist sprachenabhängig, in einigen Situationen nicht präzise genug |
|
Join Point Properties: Applications progress
|
- Current
- Referenzen zu partizipierenden Objekten - Past - Parameter History - Future - Abhängigkeiten zu anderen Dimensionen - Dynamicity past/futre -> nonlocal - Underlying data model for join points -> |
|
Join Point Adressing: Definition
|
Mittel (sprachkonstrukte) um Join Point Properties zu adressieren und sie auszuwählen
|
|
Join Point Adressing: Dimensionen
|
Level-Of Value Sharing
Directness of value Adressen Openess |
|
Join Point Adressing: Directness of Value Adressing
|
Lexikalisch: *-Operator
erlaubt Abstraktionen über konkrete Werte referenziert aber auf den lexikalischen wert Indirekt: +-Operator Unterklassen müssen keine Lexikalische Beziehung haben. |
|
Join Point Adressing: Openess of Value Adressing
|
Closed: Genaues Werteset
Open: Unpräzises Werteset Bspw. +,* .... |
|
Join Point Adressing: Level of Value Sharing
|
Stand alone: (call(Void A.m(A))
Shared-Property (Call(void(var.m(var) && var= "A) |