Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Reverse Engineering K2 1 Ziele Heute Nachlese Volltextsuche Dokumentation in Quelltext einbetten JavaDoc Vorbereitung für Compileransatz.

Ähnliche Präsentationen


Präsentation zum Thema: "Reverse Engineering K2 1 Ziele Heute Nachlese Volltextsuche Dokumentation in Quelltext einbetten JavaDoc Vorbereitung für Compileransatz."—  Präsentation transkript:

1 Reverse Engineering K2 1 Ziele Heute Nachlese Volltextsuche Dokumentation in Quelltext einbetten JavaDoc Vorbereitung für Compileransatz

2 Reverse Engineering K2 2 Aufgaben zur Volltextsuche: 4.Suchen:.... 6.Alle anwendenden Vorkommen von getName() der Klasse UMLClass Compilertechniken notwendig (nächste Woche) Die war gemein

3 Reverse Engineering K2 3 Aufgaben zur Volltextsuche: Resumee: Große Dateisysteme können schnell durchsucht werden Man muss "geschickt" suchen: –Textstücke manchmal zusammengesetzt –Manchmal Zeilenumbrüche –False Negatives: einige gesuchte Stellen werden nicht gefunden –False Positives: es werden falsche Treffer angezeigt

4 Reverse Engineering K2 4 Scripting / Programmierung mit Volltextsuche: Zusammen fassen / weiter verarbeiten / prüfen von matches durch Skripte / Programmierung Vorbereitung für Einsatz von Compilertechniken Aufgabe: Schreibt ein Programm (mit Fujaba oder Eclipse), dass einen Dateibaum durchsucht und alle Java Klassen und deren Superklassen und Interfaces findet und dafür eine objektorientierte Symboltabelle anlegt

5 Reverse Engineering K2 5 Quelltext eingebettete Dokumentation Erste Teilaufgaben: Directorybaum durchlaufen Javadatei in Stringbuffer einlesen Informiert euch, wie man aus Files liest per JavaDoc –startet z.B. bei java.io.File –falls das nichts hilft, schaut mal bei BufferedReader Informiert euch über Pattern / String.matches

6 Reverse Engineering K2 6 JavaDoc zu File: /** * Tests whether the file denoted by this abstract pathname is a * directory. * * @return true if and only if the file denoted by this * abstract pathname exists and is a directory; * false otherwise * * @throws SecurityException * If a security manager exists and its {@link * java.lang.SecurityManager#checkRead(java.lang.String)} * method denies read access to the file */ public boolean isDirectory() { Embedded Doku erlaubt gewisse Konsistenzprüfungen Doku wird mitgewartet Doku ist aktueller

7 Reverse Engineering K2 7 Pattern matching die zweite Einfaches Grundpattern: public class (\\w*)\\w* \w ist Buchstabe oder Ziffer Weil in Java String eingebettet \\w \\w viele davon: \\w* \\w* liefere gefundenes Wort: (\\w*)\\w*

8 Reverse Engineering K2 8 Symboltabelleninformation finder Directory/Projekt vorgegeben implementiert inspect zum Durchlaufen von Dateibäumen implementiert analyseJavaFile für die Suche nach den Teilen einer Klassendeklaration legt für die gefundenen Klassen FoundClass Objekte an. Testen z.B. im Dobs


Herunterladen ppt "Reverse Engineering K2 1 Ziele Heute Nachlese Volltextsuche Dokumentation in Quelltext einbetten JavaDoc Vorbereitung für Compileransatz."

Ähnliche Präsentationen


Google-Anzeigen