Πίνακας περιεχομένων:
- Ελέγξτε το τερματικό
- Ο Ruby προσπαθεί να βοηθήσει
- Χρησιμοποιήστε το "puts" για να δημιουργήσετε breadcrumbs
- Ζητήστε βοήθεια
Βίντεο: Αργό PC; ΚΑΝΕΝΑ ΠΡΟΒΛΗΜΑ! 2024
Το Ruby είναι μια αρκετά ευέλικτη γλώσσα και σας δίνει πολλά εργαλεία για να γράψετε εκπληκτικά προγράμματα με πολύ λίγη δουλειά. Ωστόσο, οι νέοι Ρουμπιάνοι μαθαίνουν γρήγορα ότι με όλη αυτή την εξουσία έρχεται λίγος υπεύθυνος για την κατάλληλη δοκιμή και σάρωση του κώδικά σας προσεκτικά. Ευτυχώς, υπάρχουν μερικές απλές τεχνικές που μπορείτε να χρησιμοποιήσετε για να βοηθήσετε να εξαλείψετε προβλήματα στον κώδικα σας.
Ελέγξτε το τερματικό
Τα περισσότερα προγράμματα Ruby εκτελούνται από μια γραμμή εντολών χρησιμοποιώντας το πρόγραμμα τερματικού ή κονσόλας της πλατφόρμας. Το Ruby είναι μια γλώσσα που έχει ερμηνευθεί, πράγμα που σημαίνει ότι καθώς τρέχετε το πρόγραμμα, ο Ruby βλέπει τον κωδικό σας για πρώτη φορά και βρίσκει προβλήματα καθώς εμφανίζονται. Αυτό είναι διαφορετικό από κάποιες άλλες γλώσσες που έχουν ένα βήμα που ονομάζεται compilation , το οποίο μπορεί συχνά να βρει προβλήματα πριν ξεκινήσει το πρόγραμμα.
Επειδή το πρόγραμμά σας ερμηνεύεται σε κίνηση, πρέπει να δοκιμάσετε προσεκτικά όλα τα μέρη του. Αν ο Ruby εντοπίσει κάποιο πρόβλημα, θα εκτυπώσει ένα μήνυμα προειδοποίησης ή σφάλματος στο τερματικό. Τις περισσότερες φορές, αυτό το μήνυμα σφάλματος θα περιλαμβάνει μια περιγραφή του προβλήματος και μια κατά προσέγγιση τοποθεσία όπου εμφανίστηκε το πρόβλημα.
Οι πληροφορίες αυτού του μηνύματος σφάλματος είναι η πρώτη σας ιδέα για το πού να ψάξετε για σφάλματα.
Ο Ruby προσπαθεί να βοηθήσει
Τα μηνύματα σφάλματος εμφανίζονται σε ποικίλους τύπους. Όταν κατανοείτε τις βασικές κατηγορίες, είναι πολύ πιο εύκολο να εντοπίσετε το πρόβλημα:
-
Τα μηνύματα NameError είναι πολύ συνηθισμένα και συνήθως συναντώνται όταν έχετε ένα τυπογραφικό λάθος στο πρόγραμμά σας. Αν προσπαθήσετε να χρησιμοποιήσετε μια μεταβλητή ή μια μέθοδο, αλλά πληκτρολογήστε λάθος όνομα, ο Ruby δεν θα μπορέσει να το εντοπίσει και θα εμφανίσει αυτό το σφάλμα. Κοιτάξτε προσεκτικά στον κώδικα σας για τυχόν λάθη ονομασίας. Θυμηθείτε ότι το Ruby κάνει διάκριση πεζών-κεφαλαίων, οπότε η μεταβλητή σας μπορεί να γράφεται σωστά, αλλά τυχαία να φέρει πεζά γράμματα ή κεφαλαία γράμματα.
-
Τα μηνύματα SyntaxError συμβαίνουν αν κάνετε τυχαία λάθος στον κώδικα Ruby, συνήθως λείπουν ή κακοποιούν μια λέξη-κλειδί Ruby. Για παράδειγμα, αν ξεχάσετε τη λέξη-κλειδί στο τέλος μιας συνθήκης if, ο Ruby θα σας ενημερώσει. Κοιτάξτε στην περιοχή του σφάλματος σύνταξης για τον κωδικό ή τον κωδικό που λείπει που έχει μπερδευτεί κατά την επεξεργασία.
-
Τα μηνύματα NoMethodError σημαίνουν ότι προσπαθείτε να χρησιμοποιήσετε τη μέθοδο ενός αντικειμένου, αλλά δεν είναι εκεί, ίσως γιατί εσείς δεν το γράψατε εσφαλμένα. Όταν λάβετε αυτό το μήνυμα, ελέγξτε ότι η μέθοδος υπάρχει στον πηγαίο κώδικα σας και ότι η ορθογραφία είναι σωστή.
Υπάρχουν και άλλα πιθανά σφάλματα, αλλά αυτά τα τρία είναι μερικά από τα πιο κοινά.
Χρησιμοποιήστε το "puts" για να δημιουργήσετε breadcrumbs
Μερικές φορές το πρόγραμμα σας λειτουργεί παράξενα αλλά το Ruby δεν εμφανίζει ένα μήνυμα σφάλματος. Αυτό συμβαίνει συχνότερα λόγω ενός σφάλματος κωδικοποίησης που οι προγραμματιστές καλούν λογικό σφάλμα . Αυτό σημαίνει ότι ο κώδικας δεν κάνει ό, τι σκοπεύατε να κάνει.
Τα προβλήματα λογικής είναι δύσκολο να εντοπιστούν, αλλά ένα απλό εργαλείο είναι να εκτυπώσετε αποσφαλμάτωση μηνυμάτων από το πρόγραμμά σας σε διάφορα σημεία κατά μήκος της διαδρομής του κώδικα σας. Αν χρησιμοποιείτε τη μέθοδο Ruby puts, τα μηνύματά σας θα εμφανίζονται στο τερματικό ενώ εκτελείτε το πρόγραμμα. Αυτά τα μηνύματα μπορεί να σας δώσουν κάποιες συμβουλές για το πού τρέχει ο κώδικας σε οποιαδήποτε στιγμή και ποιες μεταβλητές περιέχει. Μπορείτε να γράψετε γραμμές όπως "βάζει τώρα στη μέθοδο μου" ή βάζει "instance variable = # {my_variable}" για να πάρετε μια γρήγορη αίσθηση της συμπεριφοράς του προγράμματος.
Ζητήστε βοήθεια
Μερικές φορές μπορείτε να κοιτάξετε ένα πρόγραμμα για μεγάλο χρονικό διάστημα και να μην δείτε τα απλούστερα λάθη ακριβώς μπροστά σας. Μια δοκιμασμένη και αληθινή τεχνική στις περιπτώσεις αυτές είναι να παραμερίσουμε το πρόγραμμα και να επιστρέψουμε αργότερα σε αυτό με μια νέα σειρά από μάτια.
Αν αυτό δεν λειτουργήσει, υπάρχει μια ζωντανή κοινότητα προγραμματιστών Ruby στο Διαδίκτυο και κάνοντας κάποιες γρήγορες αναζητήσεις από το Google θα οδηγήσει συχνά σε μια απάντηση.
Εάν όλα τα άλλα αποτύχουν, βρίσκοντας έναν άλλο προγραμματιστή στον οποίο μπορείτε να θέσετε μια ερώτηση, προσωπικά ή σε απευθείας σύνδεση, είναι μια μεγάλη προσέγγιση.