Επιλέξτε ένα σύντομο και περιγραφικό όνομα για την τάξη σας . Το όνομα πρέπει να είναι αρκετά συνοπτική ότι ο καθένας διαβάζοντας τον κωδικό σας μπορεί να έχει μια καλή ιδέα για το τι κάνει η τάξη . 2
περίπτωση Χρησιμοποιήστε Camel για το όνομα της κλάσης . Περίπτωση Camel χρησιμοποιεί ένα κεφαλαίο γράμμα στην αρχή το όνομα της κλάσης και κεφαλαίο το πρώτο γράμμα της επόμενης λέξης , όταν ενώνει τις λέξεις . Αυτό είναι αντί να χρησιμοποιεί ένα χαρακτήρα υπογράμμισης . Για παράδειγμα , Ruby ονόματα μέθοδος μοιάζει με αυτό : method_name ? Αλλά τα ονόματα κατηγορίας θα πρέπει να μοιάζει κάπως έτσι : . ClassName
εικόνων 3
Δημιουργήστε μια κενή δήλωση Κλάση: TestClassend
Η 4
μεθόδους σχέδιο για κάθε πράγμα τάξη σας θα πρέπει να είναι σε θέση να κάνει . Γράψει , ένα προς ένα , κενών μέθοδοι για κάθε μία από τις μεθόδους . Μια τάξη μικροκυμάτων , για παράδειγμα , θα πρέπει να είναι σε θέση να κάνει πράγματα , όπως τη σειρά και να βάλουν τα τρόφιμα σε αυτό : τάξη Microwavedef put_food_inenddef take_food_outenddef turn_onenddef turn_offendend
εικόνων Γράψτε τον κώδικα για τις Μεθόδους
5
Χρησιμοποιήστε το @ μεταβλητή σύνταξη εφόσον οι μέθοδοι πρέπει να αποθηκεύουν μια μεταβλητή εσωτερικό ενός αντικειμένου. Το " σε " σύμβολο ουσιαστικά λέει " Αυτή η μεταβλητή δεν είναι μια τοπική μεταβλητή , είναι μια μεταβλητή μέλος . Ανήκει στο αντικείμενο . " Μπορείτε επίσης να χρησιμοποιήσετε τοπικές μεταβλητές στην τάξη μεθόδους . Το παράδειγμα χρησιμοποιεί τη μεταβλητή @ μέλους τροφίμων , όπου οι μεταβλητές καταστήματα τι φαγητό είναι σήμερα στο φούρνο μικροκυμάτων : class Microwavedef put_food_in ( τρόφιμα ) @ τρόφιμα = foodenddef take_food_outfood = @ @ τροφίμων τροφίμων = nilreturn foodenddef turn_onputs " μικροκυμάτων είναι στο" enddef turn_offputs " Μικροκυμάτων είναι off " endend
Η 6
Ξεκινήστε μια ετικέτα με ένα " : " χαρακτήρα και το όνομα της μεταβλητής . Για παράδειγμα , " : food " . Εδώ " : food " σημαίνει " το πράγμα που λέγεται φαγητό . " " @ food " δεν μπορεί να περάσει με τις μεθόδους * attr_ , διότι αυτό θα περάσει την αξία των "@ τροφίμων " . Επειδή θέλετε ουσιαστικά να πει « το πράγμα που ονομάζεται τροφίμων μπορεί να προσπελαστεί από έξω από την τάξη ", " : θα πρέπει να χρησιμοποιείται food"
Η 7
Βάλτε ένα από τα ακόλουθα τρία είδη attr_ * μεθόδων . τάξη σας , αλλά και έξω από οποιεσδήποτε μεθόδους . Για παράδειγμα , attr_reader επιτρέπει τον κωδικό έξω από την τάξη για να διαβάσετε τη μεταβλητή , αλλά όχι να γράψει σε αυτό . Από την άλλη πλευρά , επιτρέπει τον κωδικό attr_writer έξω από την τάξη για να γράψει σε μια μεταβλητή , αλλά δεν μπορούν να διαβάσουν . Τέλος , attr_accessor επιτρέπει τόσο την ανάγνωση και τη γραφή
8
Βάλτε έναν από τους ακόλουθους τρεις τύπους attr_ μέθοδοι * στην τάξη σας , αλλά και έξω από οποιεσδήποτε μεθόδους : . Τάξη Microwaveattr_reader : fooddef put_food_in ( τρόφιμα ) @ τροφίμων = foodend # ... το υπόλοιπο των μεθόδων πηγαίνετε εδώ , που λαμβάνονται για brevityend
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα