Bersicht
This presentation is the property of its rightful owner.
Sponsored Links
1 / 7

Übersicht PowerPoint PPT Presentation


  • 67 Views
  • Uploaded on
  • Presentation posted in: General

Übersicht. Quelltextanalyse mit regulären Ausdrücken Compilertechniken Prozessanalyse Dynamische Analyse Datenanalyse Design Pattern Erkennung Analyse- und Visualisierungstechniken Clustering Plagiatserkennung Refactoring Hot Spots Designmetriken. Ziele Heute. Dynamische Analyse

Download Presentation

Übersicht

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Bersicht

Übersicht

  • Quelltextanalyse mit regulären Ausdrücken

  • Compilertechniken

  • Prozessanalyse

  • Dynamische Analyse

  • Datenanalyse

  • Design Pattern Erkennung

  • Analyse- und Visualisierungstechniken

    • Clustering

    • Plagiatserkennung

    • Refactoring

    • Hot Spots

    • Designmetriken

    • ...


Ziele heute

Ziele Heute

Dynamische Analyse

  • Debugger

  • Code Instrumentierung

  • Profiler / Coverage Tools


Debugger

Debugger

  • schrittweise Ausführung

  • step over / step into

  • conditional breakpoints

  • manuell ein mühsames Geschäft

  • JDI Programmierschnittstelle zur "Fernsteuerung" eines Debuggers

  • Aufgabe: setzt einen Conditional Breakpoint auf System.out.println und findet Welcome To Fujaba


Code instrumentierung

Code Instrumentierung

  • System.out.println am Anfang und am Ende jeder Methode=> alle Methodenaufrufe und Rücksprünge nachvollziehbar(Auswertung durch zusätzliches Programm)

  • noch genauer System.out.println bei jedem If und jeder Schleife=> Statement Abfolge eindeutig rekonstruierbar

  • Quellcodeinstrumentierung mit Compilertechniken(Aspektorientierte Techniken)

  • Bei Java oft Byte-Code Instrumentierung


Code instrumentierung 2

Code Instrumentierung (2)

Unzählige Anwendungen:

  • Logging (für sporadisch auftretende Fehler)

  • Profiling (kommt gleich)

  • Code Coverage

  • Differenzanalyse

    Probleme:

  • Trace wächst irrsinnig schnell(Meist Einschränkungen auf bestimmte Packages nötig)

  • Programm Slow-Down

  • . . .


Profiler

Profiler

  • statistische Auswertung zeilengenauer Traces

  • DAS Mittel zur Effizienzsteigerung


Aufgaben

Aufgaben

  • Conditional Breakpoint auf System.out.print, findet Welcome to Fujaba

  • ant tasks in eclipse hinzufügenFujaba/ProjectFiles/IDEA/build.xml

  • task jcoverage run –noabout ausführenFujaba

    task jcoverage run –noabout ausführen

    Reports unter Fujaba/doc vergleichenWelche Zeilen realisieren die AboutBox?

  • Das gleiche noch mal mit den Easter Egg Bugs ausprobieren 


  • Login