Κριτικές κώδικα για να γίνετε καλύτερος προγραμματιστής
Από την εμπειρία μου, η συμμετοχή σε μια αναθεώρηση κώδικα είναι ο πιο αποτελεσματικός τρόπος για να ανεβείτε επίπεδο ως προγραμματιστής. Εάν είστε ο δημιουργός των αλλαγών που εξετάστηκαν, μπορείτε να λάβετε απευθείας σχόλια από τους συναδέλφους σας. Και αν είστε ένας από τους αναθεωρητές, μπορείτε να μάθετε διαφορετικές προσεγγίσεις που ίσως δεν είχατε σκεφτεί σχετικά με τον τρόπο επίλυσης εφαρμογών.
Αλλά η σωστή παροχή και επίσης η κατανόηση μιας αναθεώρησης κώδικα είναι μια δεξιότητα που πρέπει να μάθετε. Σε αυτό το άρθρο, θα αναφέρω απλώς ορισμένες πτυχές που λαμβάνω υπόψη όταν δίνω και λαμβάνω κριτικές κώδικα. Από την άποψή μου, έχουν αποδειχθεί ότι είναι η σωστή επιλογή για ένα συνεργατικό και φιλόξενο περιβάλλον ανάπτυξης.
Αυτό που ορίζω ως καλό κώδικα
Να θυμάστε ότι δεν υπάρχει τίποτα πιο μόνιμο από μια προσωρινή λύση.
Οι παρακάτω βασικές μετρήσεις με καθοδηγούν όταν γράφω και εξετάζω κώδικα.
- ο κωδικός είναι διατηρήσιμος, π.χ. χωρίς αμυχές ή λύσεις, όσο καλά τεκμηριωμένες
- ο κώδικας είναι εύκολα αναγνώσιμος, επομένως η συλλογιστική γι' αυτόν είναι πολύ πιο εύκολη
- ο κώδικας είναι ελεγχόμενος, βελτιώνοντας έτσι περαιτέρω τα δύο προηγούμενα σημεία
Πώς να κάνετε μια κριτική κώδικα
Να είσαι ταπεινός
Το να κάνεις λάθος δεν είναι πρόβλημα. Το να επιμένετε ότι έχετε δίκιο, παρόλο που αντικειμενικά δεν έχετε δίκιο, είναι πρόβλημα. Να έχετε πάντα υπόψη σας ότι μπορεί να χάσετε κάτι ή απλώς να παρεξηγήσατε τον κώδικα. Να είστε ανοιχτοί για απώθηση και να είστε ταπεινοί για την ευκαιρία να μάθετε κάτι νέο.
Οι κριτικές κώδικα δεν είναι προσωπικές
Θυμηθείτε: ο κωδικός έρχεται πρώτος. Μπορεί να αναθεωρήσετε τον κώδικα κάποιου σε μια τεταμένη κατάσταση όπου και οι δύο δεν έχετε διάθεση να μιλήσετε μεταξύ σας ή γενικά διαφωνείτε σχετικά με τον τρέχοντα τρόπο λειτουργίας των πραγμάτων.
Οι κριτικές κώδικα δεν είναι το μέρος για να αφήσετε λίγο τον ατμό ή να αποπληρώσετε τις απογοητεύσεις. Ο μοναδικός σκοπός των κριτικών είναι η αντικειμενική βελτίωση της ποιότητας του κώδικα. Ο κώδικας που ελέγχετε και που θα συγχωνευθεί είναι ο επόμενος κωδικός παλαιού τύπου, επομένως είναι σημαντικό να αφήσετε στην άκρη τα προσωπικά πράγματα και να παρέχετε μια αντικειμενική αξιολόγηση, ανεξάρτητα από το ποιος είναι ο ελεγκτής.
Οι απόψεις δεν είναι κριτικές
Μια βασική διαφορά μεταξύ μιας καλής κριτικής και ενός απλού σχολίου είναι ότι οι κριτικές αφήνουν έξω τις απόψεις. Για παράδειγμα, δεν έχει σημασία πώς φαίνεται το στυλ κώδικα, αρκεί να είναι συντηρήσιμο, ευανάγνωστο και ελεγχόμενο. Εάν δεν είστε βέβαιοι εάν η κριτική σας θα ήταν αποδεκτή, απλώς προσθέστε μια παρατήρηση ώστε να συζητήσετε το θέμα με τον συνάδελφό σας.
Οι καλές κριτικές οδηγούν σε καλές συζητήσεις
Η αμφισβήτηση μιας κριτικής μπορεί να οδηγήσει σε μεγάλες μεταφορές γνώσεων μεταξύ προγραμματιστών. Μια δεδομένη ανασκόπηση δεν θα πρέπει να αντιμετωπίζεται ως τελικό σχόλιο, αλλά μάλλον ως αφετηρία για συζητήσεις για την πλήρη εικόνα. Και οι δύο μπορεί να χάσετε κάτι και η συζήτηση για την κριτική μπορεί μόνο να βελτιώσει τις γνώσεις σας.
Οι προθεσμίες δεν έχουν σημασία
Δεν είναι πάντα εύκολο να επιβληθεί, αλλά η παράλειψη ελέγχων κώδικα μπορεί ενδεχομένως να δημιουργήσει ένα μεγάλο τεχνικό χρέος που κανείς δεν θα είναι διατεθειμένος να καθαρίσει. Είναι σημαντικό να διατηρήσετε την απαραίτητη πειθαρχία για να κάνετε διεξοδικούς ελέγχους κώδικα ακόμα κι αν ακούτε το ρολόι να χτυπά. Ίσως είστε ο επόμενος προγραμματιστής που θα εργαστεί σε αυτό το χάος!
Χρησιμοποιήστε συνδέσμους για αναφορές
Η σύγκριση του αναθεωρημένου κώδικα με τον υπάρχοντα συμβαίνει αρκετά συχνά. Επομένως, είναι σημαντικό να συμπεριλάβετε σωστά τις αναφορές μέσω συνδέσμων. Μόνο η αναφορά του κατά προσέγγιση σημείου όπου βρίσκεται ο αναφερόμενος κωδικός δεν το κόβει.
Χρησιμοποιήστε τη δυνατότητα του στοιχείου ελέγχου πηγής για να επισημάνετε τον κώδικα σε έναν υπάρχοντα κλάδο και να χρησιμοποιήσετε τις δημιουργημένες διευθύνσεις URL στην κριτική σας για αναφορά. Το ίδιο ισχύει για την εξωτερική τεκμηρίωση, για παράδειγμα στο MDN.
Πώς να διαβάσετε μια κριτική κώδικα
Ολα τα παραπανω
Η ανάγνωση κριτικών κώδικα του κώδικά σας σας κάνει καλύτερο προγραμματιστή όταν ακολουθείτε όλα τα προαναφερθέντα σημεία. Να είστε ταπεινοί, μην παίρνετε την κριτική προσωπικά και προσπαθήστε να κατανοήσετε τι επισημαίνει μια κριτική για να κατανοήσετε καλύτερα τη μεγάλη εικόνα.
Μια προσωπική άποψη για το πώς να είσαι αντικειμενικός
Αυτό το άρθρο αντικατοπτρίζει την προσωπική μου προσέγγιση σχετικά με τις κριτικές κώδικα. Τα σημεία που περιγράφονται είναι απλώς το επιστέγασμα της εμπειρίας μου ως προγραμματιστής σε ομάδες μεγάλες και μικρές, τόσο σε τοπικό όσο και σε διεθνές επίπεδο. Έχουν αποδειχθεί ότι λειτουργούν, οδηγώντας σε καλύτερο κώδικα και δίνοντάς μου την ευκαιρία να μάθω άμεσα από άλλους.