Πλοήγηση ανά Επιβλέποντα "Diamantidis, Nikolaos"
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω
Τώρα δείχνει 1 - 1 από 1
- Αποτελέσματα ανά σελίδα
- Επιλογές ταξινόμησης
Τεκμήριο Control flow graph generation from JavaScript source code(2025-09-24) Rigos, Gasparis; Ρήγος, Γασπάρης; Diamantidis, NikolaosΗ στατική ανάλυση κώδικα αποτελεί έναν από τους βασικούς τρόπους διασφάλισης της συντηρησιμότητας ενός προγραμματιστικού τμήματος, όπως μιας συνάρτησης ή ενός προγράμματος. Μέσω αυτού του είδους ανάλυσης, ο κώδικας εξετάζεται χωρίς να εκτελείται. Η στατική ανάλυση κώδικα μπορεί να πραγματοποιηθεί είτε χειροκίνητα μέσω ελέγχων κώδικα (code reviews) είτε αυτόματα με τη χρήση εξειδικευμένων εργαλείων που αναλύουν τον κώδικα. Η JavaScript ειδικότερα είναι μια διαβόητη γλώσσα για ανασκόπηση και αποσφαλμάτωση, λόγω της αφηρημένης και ευέλικτης φύσης της. Η χρήση Γραφημάτων Ροής Ελέγχου (Control Flow Graphs ή CFGs) συμβάλλει στη βελτίωση της αποδοτικότητας της χειροκίνητης ανάλυσης κώδικα, απεικονίζοντας τη ροή του ελέγχου μέσα σε μια δεδομένη συνάρτηση. Με την αξιοποίηση ενός αναλυτή πηγαίου κώδικα που δημιουργεί ένα Αφηρημένο Συντακτικό Δέντρο (Abstract Syntax Tree ή AST) μιας συνάρτησης, η παρούσα εργασία εξετάζει τις τεχνικές και τις μεθόδους που επιτρέπουν τη δημιουργία ενός CFG από το AST. Αυτές οι μέθοδοι ορίζουν μια λογική η οποία υλοποιείται σε μια ιδεολογία Visitor, η οποία χρησιμοποιείται για την ανάλυση του εισερχόμενου AST και την προοδευτική κατασκευή του CFG. Οι δυνατότητες αυτού του εργαλείου παρουσιάζονται στο τελευταίο μέρος της εργασίας, καθώς και οι διαφορετικοί τρόποι χρήσης και εγκατάστασής του ως επέκταση για το Visual Studio Code. Τέλος, το παραγόμενο αποτέλεσμα συγκρίνεται με άλλες διαθέσιμες λύσεις, με στόχο να εντοπιστούν τα πλεονεκτήματα του JS Slicer και τα συγκριτικά του οφέλη έναντι αυτών των άλλων εργαλείων.