Häufig reichte aber es nicht aus, statische Visualisierung zu haben,
also statische Eigenschaften zu analysieren, wie Struktur kennt Größenentwicklungsgeschichte,
sondern wir wollen auch etwas über den Ablauf finden und auch visualisieren.
Und das wäre dann der Punkt dynamische Visualisierung.
Dazu haben wir eine Frage auch,
wie werden diese Informationen gesammelt
Zunächst dazu, welche Informationen wir denn dynamisch darstellen wollen.
Und das wären solche Sachen wie Ausführungsträses.
Also wo ging die Ausführung überall lang? Dann ist es häufig
sowas interessant, wie Ressourcenverbrauch. Ressourcen können Speicherplatz sein,
aber auch Zeit- oder Netzwerkcover-Netzwerk benutzt oder auch die Interaktion von,
in dem Fall natürlich Objekten
Das ist das, was wir darstellen wollen und nun
die Fragen, wie man das gewinnen kann.
Und das ist ja das, was hier bei der Frage hier,
Frage 4, dargestellt gefragt wird,
wie können die
gewonnen werden
Gewonnen werden Sie mit einer Technik,
die wir vorhin schon besprochen hatten, nämlich,
dass man mit Hilfe eines Pro-Filers Aufzeichnungen macht,
dann indem man Lockfiles erzeugt.
Und das war der gleiche Schritt, den wir schon mal hatten.
Das wäre die Code-Instrumentierung. Und dann würden wir durch das
Durchlaufen von Szenarien Jetzt bin ich hier nur ein bisschen wegschieben,
dass Sie was sehen. Er war im Durchlaufen von Szenarien
. Ausführungsinformationen aufzeichnen. Wir das sammeln. Und das Auswerten
aus lockfields. Und das wäre wieder das,
was wir schon hatten als Werkzeug häufig mit der Bezeichnung pro Filer.
Wir hatten im Voragentenabschnitt, als es um Abdeckungsanalyse ging,
genau darüber gesprochen. Und das wäre jetzt hier auch die
Antwort auf die Frage Nummer 4. Wie werden solche Informationen gewonnen?
Lassen Sie uns ein paar Beispiele dazu zeigen.
Wir starten mal mit Jay Insight. Jay Insight ist ein Projekt,
ist aus einem Projekt bei APM mal entstanden.
Das ist nun schon eine ganze Weile her.
Am Ende der 90er Jahre gewesen. Trotzdem ist das noch
ein Werkzeug, was uns relativ gut hilft
Gesehen, es sieht so ähnlich aus,
wie wir in Sequenzdiagrammen,
welche Sequence-Charts und es hilft uns also hier Aufrufe zu zeigen,
also es ist niemals Aufrufe zum nächsten,
zum nächsten Objekt und auf diese Weise kann ich den Aufrufsdeck verfolgen,
Programmablauf, Sachen kann ich verfolgen und daran kann ich bestimmte Sachen versuchen eben besser zu verstehen.
Ich kann die Farbe hier noch nutzen, um Speicherallokationen oder
so etwas darzustellen. Das wäre möglich, dass zum Beispiel,
wenn ich sowas wie Memory Leaks oder sowas suche,
kann das sehr hilfreich sein
Ein weiterer Punkt wäre, dass wir hier aufrufe,
visualisieren, die sind nun nicht im Einzelnen dargestellt,
sondern eher so nach dem Ablauf,
dass ich also sehe, wer ruft hier wen auf,
die Diagonale, sagt uns wieder,
das wäre ein Aufruf zu sich selbst.
Also wir sehen schon, das ist nicht so ganz symmetrisch dargestellt
und wir könnten jetzt hier auch noch die Farbe nutzen,
um weitere Informationen zu tragen.
Und das kann man in den Werkzeugen häufig parametrieren,
indem ich zum Beispiel die Anzahl der Häufigkeit,
die Dauer oder wann ist das denn passiert,
noch mit hinzufügen kann
Genau, das wäre es eigentlich schon zu Visualisierung und
wir beginnen dann weiter zum nächsten Abschnitt