Πώς να διορθώσετε τα συντακτικά σφάλματα

Λυπημένος χρήστης υπολογιστή

Οι προγραμματιστές εργάζονται για την επίλυση συντακτικών σφαλμάτων κατά τη διαδικασία εντοπισμού σφαλμάτων.

Πίστωση εικόνας: Arpad Nagy-Bagoly/iStock/Getty Images

Η διόρθωση συντακτικών σφαλμάτων είναι απαραίτητη στον προγραμματισμό υπολογιστή: το πρόγραμμα δεν θα λειτουργήσει μέχρι να διορθωθούν τα σφάλματα. Τα συντακτικά σφάλματα σημαίνουν ότι το πρόγραμμα δεν μπορεί να κατανοήσει εντολές με βάση τους κανόνες της γλώσσας προγραμματισμού. Στον προγραμματισμό, η σύνταξη αναφέρεται στη σωστή διάταξη των εντολών (όπως οι κανόνες της γραμματικής) και στην ορθογραφία. Οι προγραμματιστές μπορούν να επιλύσουν τα συντακτικά σφάλματα με τη βοήθεια των εργαλείων εντοπισμού σφαλμάτων Interactive Development Environment και των βέλτιστων πρακτικών χειροκίνητου ελέγχου κώδικα.

Λάθος και λείπει σημεία στίξης

Τα σύμβολα στίξης λένε στο σύστημα πού τελειώνουν οι εντολές, πώς ομαδοποιείται ο κώδικας και πώς να καλεί διαφορετικά μέρη του κώδικα. Ο εντοπισμός σφαλμάτων IDE εντοπίζει αποτελεσματικά τα λάθη στίξης που δεν έχουν τοποθετηθεί και λείπουν. Ενώ διαφορετικές γλώσσες προγραμματισμού έχουν ένα ευρύ φάσμα διαφορετικών χρήσεων σημείων στίξης, υπάρχουν γενικοί κανόνες που θα σας καθοδηγήσουν. Για παράδειγμα, ο τερματισμός μιας γραμμής κώδικα με άνω και κάτω τελεία αντί για ερωτηματικό στη γλώσσα προγραμματισμού C++ είναι εσφαλμένος χαρακτήρας και προκαλεί συντακτικό σφάλμα.

Το βίντεο της ημέρας

Περιέχει εντολές με σημεία στίξης

Γλώσσες όπως η Java και η JavaScript χρησιμοποιούν παρενθέσεις και αγκύλες για να εξηγήσουν πώς ταιριάζει ο κώδικας μεταξύ τους. Το πρόγραμμα δεν θα μπορεί να κατανοήσει την εντολή εάν όλες οι παρενθέσεις και οι αγκύλες δεν διαθέτουν αντίστοιχους χαρακτήρες ανοίγματος και κλεισίματος. Τα εισαγωγικά μπορούν επίσης να προκαλέσουν προβλήματα όταν χρησιμοποιούνται λανθασμένα ή λείπουν. Για παράδειγμα, εάν χρησιμοποιείτε ένα εισαγωγικό μέσα σε μια συμβολοσειρά κειμένου που ορίζεται από εισαγωγικά, πρέπει να χρησιμοποιήστε μια ακολουθία διαφυγής στο εσωτερικό εισαγωγικό διαφορετικά το πρόγραμμα θα τερματίσει τη συμβολοσειρά σε λάθος σημείο. Ενώ το IDE μπορεί να προσδιορίσει ποια γραμμή κώδικα έχει το συντακτικό σφάλμα, ο προγραμματιστής μπορεί να χρησιμοποιήσει την ανίχνευση ενός βήματος για να εξετάσει πού αρχίζει και πού τελειώνει κάθε περίβλημα για να εντοπίσει το σφάλμα.

Μη ενημερωμένος κωδικός

Οι γλώσσες προγραμματισμού μπορούν να ενημερωθούν σε νέα πρότυπα -- που περιλαμβάνει την κατάργηση των υπαρχουσών εντολών. Εάν εκτελείτε παλαιότερο κώδικα έναντι ενός προγράμματος που χρησιμοποιεί ένα ενημερωμένο πρότυπο ερμηνείας κώδικα, ενδέχεται να αντιμετωπίσετε σφάλματα σύνταξης για απαρχαιωμένες εντολές. Για παράδειγμα, πριν από τον Internet Explorer 10, το πρόγραμμα περιήγησης θα μπορούσε να χρησιμοποιήσει εντολές εφέ εμφάνισης JavaScript που ονομάζονται "DX Φίλτρα." Εάν εκτελείτε κώδικα που χρησιμοποιεί φίλτρα DX στον IE 9, ο κώδικας θα λειτουργήσει, ενώ αν τον εκτελέσετε στον IE 10 δεν θα λειτουργήσει δουλειά. Χρησιμοποιήστε ενημερωμένες, υποστηριζόμενες τεχνικές προγραμματισμού για να αντικαταστήσετε τον παλιό κώδικα.

Εντολές που δεν χρησιμοποιούνται σωστά

Το σύστημα εντοπισμού σφαλμάτων IDE εντοπίζει εύκολα εντολές που χρησιμοποιούνται εσφαλμένα. Για παράδειγμα, το πρόγραμμα θα έχει ένα συντακτικό σφάλμα εάν έχετε έναν αριθμό που είναι αποθηκευμένος ως συμβολοσειρά όπως το "22" και προσπαθήσετε να προσθέσετε έναν άλλο αριθμό σε αυτόν. Το πρόγραμμα αντιμετωπίζει τις συμβολοσειρές, ακόμα κι αν είναι αριθμοί, ως κείμενο. Ενώ το IDE θα προσδιορίσει πού προστίθενται ο αριθμός και η συμβολοσειρά, ο προγραμματιστής πρέπει να ανιχνεύσει τον κώδικα προς τα πίσω για να προσδιορίσει πού η συμβολοσειρά έγινε συμβολοσειρά.

Μη έγκυρα ονόματα μεταβλητών και συναρτήσεων

Οι γλώσσες προγραμματισμού που είναι δομημένες γύρω από μεταβλητές (εκχωρημένες τιμές) και συναρτήσεις (που ονομάζονται ομάδες κώδικα) θα αντιμετωπίσουν συντακτικά σφάλματα όταν οποιοσδήποτε τύπος δεδομένων χρησιμοποιείται εσφαλμένα. Η μεταβλητή θα μπορούσε να οριστεί ως συμβολοσειρά όταν θα έπρεπε να είναι ακέραιος ή μια συνάρτηση θα μπορούσε να ονομαστεί από ένα όνομα εντολής που έχει δεσμευτεί στη γλώσσα. Επιπλέον, κάθε γλώσσα έχει μοναδικούς κανόνες ονομασίας για ποιες μεταβλητές και συναρτήσεις μπορούν να ονομαστούν, όπως αποδεκτοί τύποι χαρακτήρων, ευαισθησία πεζών-κεφαλαίων και αρχικοί περιορισμοί χαρακτήρων. Για παράδειγμα, η γλώσσα PHP δεν θα επιτρέπει στα ονόματα μεταβλητών να ξεκινούν με έναν αριθμό.