Η χρήση των συντακτικών δέντρων στην δημιουργία μιας εφαρμογής ανάλυσης προγραμμάτων Java
Date Issued
January 26, 2024
Type
Μεταπτυχιακή Διπλωματική Εργασία
Abstract
Σκοπός αυτής της διπλωματικής εργασίας είναι η ανάπτυξη ενός λογισμικού το οποίο λειτουργεί ως ένα εργαλείο ανάλυσης προγραμμάτων Java. Αυτό σημαίνει ότι το νέο πρόγραμμα είναι σε θέση να εμφανίζει τα bytecodes που αντιστοιχούν σε ένα αρχείο το οποίο δίνει ως είσοδο ο χρήστης. Το αρχείο εισόδου μπορεί να είναι ένα ήδη μεταγλωττισμένο αρχείο (με κατάληξη .class) ή ένα αρχείο πηγαίου κώδικα το οποίο αναλαμβάνει να μεταγλωττίσει το ίδιο το πρόγραμμα με σκοπό να εμφανίσει τα bytecodes που αντιστοιχούν σε αυτό. Η δεύτερη λειτουργία που επιτελεί το νέο αυτό λογισμικό είναι αυτή του decompiler. Με άλλα λόγια, ο χρήστης μπορεί να δίνει ως είσοδο ένα .class αρχείο και να παίρνει ως έξοδο τον πηγαίο κώδικα που αντιστοιχεί σε αυτό. Αυτές οι δύο λειτουργίες πραγματοποιούνται μέσω μοντέρνων αλγορίθμων οι οποίοι κάνουν εκτενή χρήση των συντακτικών δέντρων καθώς και της βιβλιοθήκης ανοιχτού κώδικα javassist.
Subjects
