Βίντεο: Arrival: ΑΛΓΟΡΙΘΜΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΣΙΔΗΡΟΔΡ. ΔΙΚΤΥΩΝ / ALGORITHMIC TECHN. FOR RAILWAY NETWORKS 2024
Οι κλάσεις μπορούν να χρησιμοποιηθούν για την παροχή συντομεύσεων και βοηθών καθ 'όλη τη διάρκεια του προγραμματισμού. Για παράδειγμα, μπορεί να έχετε μια τάξη για να ορίσετε έναν χρήστη. Στη συνέχεια, μπορείτε να προσθέσετε λειτουργίες (γνωστές ως μέθοδοι) σε αυτήν την τάξη χρηστών για κοινά πράγματα που μπορεί να χρειαστεί να κάνουν οι χρήστες, όπως ενημέρωση των κωδικών πρόσβασης τους.
Χωρίς μαθήματα, θα καταλήγατε να έχετε πολλές λειτουργίες γύρω σας στα προγράμματα σας, ενδεχομένως να συγκρούονται μεταξύ τους.
Φανταστείτε το σενάριο (αυτό συνέβη πραγματικά) όπου γράφετε ένα σύνολο προγραμμάτων διαχείρισης χρηστών χωρίς τάξεις. Αυτά τα προγράμματα θα περιλαμβάνουν λειτουργίες όπως changePassword, addPermission, setEmail κ.ο.κ. Τώρα θέλετε να συγχωνεύσετε αυτόν τον κώδικα με κάποιον άλλο για να προσθέσετε τη δυνατότητα χρήσης ομάδων ή ρόλων στο πρόγραμμά σας. Τα προγράμματα τους γράφονται επίσης χωρίς τάξεις και έχουν κάποια από τα ίδια ονόματα λειτουργιών με τα προγράμματα σας, όπως το addPermission.
Όταν προσπαθείτε να τα συγχωνεύσετε, δεν θα βρείτε τέλος στις συγκρούσεις και στις συγκρούσεις των ονομάτων λειτουργιών. Μέχρι να ολοκληρώσετε τη συγχώνευση του κώδικα, θα μπορούσατε να γράψετε όλα αυτά από την αρχή ξανά!
Από την άλλη πλευρά, εάν ορίσετε τα προγράμματά σας χρησιμοποιώντας τάξεις, τότε η λειτουργία addPermission (μέθοδος) δεν θα συγκρουόταν ποτέ με άλλη συνάρτηση επειδή η μέθοδος addPermission συνδέεται με την τάξη των χρηστών.
Υπενθυμίζουμε ότι για να δημιουργήσετε έναν χρήστη με τρόπο αντικειμενοστραφή (που ονομάζεται δημιουργία ενός αντικειμένου χρήστη), χρησιμοποιείτε τη νέα λέξη-κλειδί. Για παράδειγμα, εάν η κλάση χρήστη σας ονομάστηκε Χρήστης (για έλλειψη λιγότερο περιγραφικού όρου), θα το δημιουργούσατε ως εξής:
$ user = new User.
Στη συνέχεια, όταν καλείτε μεθόδους, τους καλείτε μέσω του δικού σας αντιγράφου του αντικειμένου χρήστη, όπως παρακάτω:
$ user-> addPermission ();
Τώρα δεν υπάρχει σύγκρουση επειδή ένα αντικείμενο ομάδας θα λέγεται κάτι διαφορετικό.