Θέλετε ποιοτικό κώδικα; Βρείτε έναν προγραμματιστή που… βρίζει!
Όχι, δεν είναι τρολ! Μια πτυχιακή εργασία που ξεκίνησε με χιούμορ κατέληξε στο ότι η ποιότητα του λογισμικού ανοιχτού κώδικα γλώσσας C τείνει να είναι καλύτερη όταν χρησιμοποιούνται βωμολοχίες.
Μία από τις πιο γνωστές αστοχίες λογισμικού που οφείλονται σε χαμηλή ποιότητα είναι η αποτυχημένη παρθενική πτήση του πυραύλου Ariane 5 την 4η Ιουνίου του 1996, ο οποίος εξερράγη 40 δευτερόλεπτα μετά την εκτόξευση. Αυτή η καταστροφή κατέστησε προφανές ότι η ποιότητα του κώδικα είναι ένα πολύ σημαντικό μέρος της ανάπτυξης λογισμικού που συχνά παραβλέπεται.
Υπάρχουν διαφορετικές προσεγγίσεις για την ποιότητα του κώδικα, με τις πιο δημοφιλείς να βασίζονται στις οδηγίες που δίνει ο Robert Cecile Martin, γνωστός και ως “Uncle Bob”, στο βιβλίο του με τίτλο:“Clean Code”. Εκεί ο αμερικανός επιστήμονας αφιερώνει ένα ολόκληρο κεφάλαιο στην ονομασία μεταβλητών, συναρτήσεων, κλάσεων κ.λπ.. Οι κανόνες του αναφέρουν, μεταξύ άλλων, ότι «ως προγραμματιστής δεν πρέπει να είσαι χαριτωμένος ή να χρησιμοποιείς λογοπαίγνια κατά την ονοματοδοσία».
Αυτός ο κανόνας παραξένεψε τον ερευνητή Jan Strehmel στο Ινστιτούτο Θεωρητικής Επιστήμης Υπολογιστών του Ινστιτούτου Τεχνολογίας της Καρλσρούης, KIT (Karlsruher Institute of Technology) και τον ώθησε να στηρίξει την πτυχιακή του διατριβή στο ερώτημα: «Επηρεάζει η χρήση υβριστικού λεξιλογίου στον κώδικα και στα σχόλιά του τη συνολική ποιότητα του κώδικα;».
O Strehmel για να διερευνήσει αυτό το θέμα, υπό την επίβλεψη του Έλληνα καθηγητή Αλέξανδρου Σταματάκη, εξέτασε χιλιάδες αποθετήρια στο Github με ανοιχτό κώδικα γραμμένο στη γλώσσα προγραμματισμού C και τα σύγκρινε με μια ηλεκτρονική λίστα με περισσότερες από 300 βωμολοχίες στην αγγλική γλώσσα. Ο ερευνητής κατέληξε να χρησιμοποιήσει πάνω από 3800 ανοιχτούς κώδικες C που περιείχαν αγγλικές βωμολοχίες στα σχόλια, στον ίδιο τον κώδικα (ως ονόματα μεταβλητών, για παράδειγμα) ή και στα δύο και πάνω από 7600 που δεν περιείχαν κανένα από τα παραπάνω στοιχεία, τα οποία λειτούργησαν ως ομάδα ελέγχου.
Unsplash
Ποιος είναι ο καλύτερος κώδικας;Το ποιος είναι ο «καλύτερος» κώδικας σε πολλές περιπτώσεις μπορεί να αποτελεί θέμα άποψης. Για αυτήν την πτυχιακή εργασία, ο Strehmel βασίστηκε στη συμμόρφωση με τα γενικά πρότυπα καλού προγραμματισμού ως δείκτη. Ανέλυσε τις δέσμες κώδικα με και χωρίς υβριστικό περιεχόμενο χρησιμοποιώντας ένα λογισμικό (με την ονομασία SoftWipe), το οποίο ελέγχει την ποιότητα ενός κώδικα γραμμένου σε C ή C++ χρησιμοποιώντας τεχνικές ανάλυσης στατικού και δυναμικού κώδικα, συμπεριλαμβανομένων των Clang Address Sanitiser και Lizard. Αυτό το λογισμικό ελέγχει εάν ο κώδικας ενός προγράμματος συμμορφώνεται με τα γενικά πρότυπα ποιότητας και, στη συνέχεια, τον αξιολογεί από 0 (χαμηλή συμμόρφωση) έως 10 (καλή συμμόρφωση).
«Προσδιορίσαμε ποσοτικά τη συμμόρφωση αυτών των δύο διακριτών συνόλων πηγαίου κώδικα σε πρότυπα κωδικοποίησης, τα οποία αναπτύσσουμε ως έμμεση ένδειξη για την ποιότητα του πηγαίου κώδικα μέσω του εργαλείου SoftWipe που αναπτύχθηκε από την ομάδα μας», διευκρινίζει ο Δρ. Αλέξης Σταματάκης, ο οποίος ηγείται της ερευνητικής ομάδας Exelixis Lab στο Ινστιτούτο Θεωρητικών Σπουδών της Χαϊδελβέργης (HITS) και στο Τεχνολογικό Ινστιτούτο της Καρλσρούης (KIT), της μοναδικής στη Γερμανία που ασχολείται με την ανάπτυξη προγραμμάτων και μεθόδων για τον υπολογισμό εξελικτικών δέντρων. Αξίζει να σημειωθεί ότι ο Δρ. Σταματάκης συγκαταλέγεται στους ελάχιστους Έλληνες ειδήμονες στους σχετικούς αλγόριθμους, στους παράλληλους υπολογιστές, στις παράλληλες αρχιτεκτονικές και στην εξελικτική Βιοπληροφορική σε ολόκληρη την Ευρώπη.
O Strehmel χρησιμοποιώντας διάφορες κατάλληλες στατιστικές δοκιμές, διαπίστωσε ότι ο ανοιχτός κώδικας που περιέχει υβριστικό λεξιλόγιο (όπως bullshit, damn, clusterfuck, hell, ass, κ.ά) εμφανίζει σημαντικά καλύτερη ποιότητα από εκείνους που δεν περιέχουν.
Το αποτέλεσμα της έρευνας έδειξε ότι τα 7.600 αποθετήρια που δεν περιέχουν καμία από τις 300 περίπου βρισιές που αναφέρονται έλαβαν μέση τιμή 5,41 βαθμούς (διάστημα εμπιστοσύνης 5,38-5,45 σε επίπεδο εμπιστοσύνης 99%). Αντίστοιχα, τα 3.800 αποθετήρια με αγγλικές βρισιές σημείωσαν 5,87 (5,81-5,93). Η συσσώρευση κωδίκων με βρισιές με υψηλή βαθμολογία από 7 έως 8 βαθμούς είναι ιδιαίτερα εντυπωσιακή!
Η μελέτη δεν προσπάθησε να ανακαλύψει γιατί ο κώδικας με τις βωμολοχίες είναι καλύτερος, αφού ο Strehmel υπέθεσε στην πραγματικότητα ότι δεν θα έβρισκε καμία σημαντική διαφορά. Το μόνο που μπορεί να κάνει τώρα είναι εικασίες σχετικά με τα αίτια υποθέτοντας ότι η χρήση βωμολοχίας είναι ένδειξη μιας ιδιαίτερα βαθιάς συναισθηματικής εμπλοκής του προγραμματιστή με τον κώδικά του και με την εγγενή πολυπλοκότητά του. Αυτό θα μπορούσε να έχει ως αποτέλεσμα ο συντάκτης του κώδικα να καταβάλει περισσότερη προσπάθεια στο να δημιουργήσει το «παιδί» του.
Ωστόσο, οι βρισιές από μόνες τους δεν μπορούν να μετατρέψουν τα «σκουπίδια» σε χρυσό! Ο συγγραφέας της μελέτης προειδοποιεί ότι το αποτέλεσμα δεν μπορεί να αντιστραφεί. Η χρήση υποτιμητικών εκφράσεων και βωμολοχίας δεν οδηγεί αυτόματα σε καλύτερη ποιότητα κώδικα.
Μια ψυχολογική μελέτη που δημοσιεύτηκε το 2017 υποστηρίζει ότι οι βρισιές στο χώρο εργασίας μειώνουν το άγχος. Λιγότερο άγχος θα μπορούσε να σημαίνει καλύτερη συγκέντρωση, η οποία με τη σειρά της θα μπορούσε να οδηγήσει σε καλύτερο κώδικα.
#ΥΠΟΛΟΓΙΣΤΕΣ #ΚΩΔΙΚΑΣ- Δημοφιλέστερες Ειδήσεις Κατηγορίας Ειδήσεις
- Ο Γιώργος Καρατζαφέρης μηνύει το «Μακελειό» – Δικηγόρος του ο Αλέξης Κούγιας
- Zωζώ Σαπουντζάκη: Σπάνια φωτογραφία από τον δεύτερο γάμο της πριν από 50 χρόνια
- Θέλετε γερή καρδιά; Βάλτε αυτά τα πέντε τρόφιμα στο πιάτο σας
- Λιάγκας για Βανδή – Μπισμπίκη: «Έχουν σχεδόν ξεμωραθεί και κάνουν αυτά τα πράγματα δημόσια»
- Ανεβάζουν τα παιδιά τους σαν... «αξεσουάρ» στα social media
- Δημοσκόπηση Opinion Poll: Με 7,6 μονάδες προηγείται η ΝΔ έναντι του ΣΥΡΙΖΑ- Στο 9,8% το ΠΑΣΟΚ – ΚΙΝΑΛ
- 21χρονη υποστηρίζει ότι είναι η εξαφανισμένη Μαντλίν Μακάν
- Εκλογές 2023: Επίσημη η υποψηφιότητα του Σταύρου Καραγούνη με τον ΣΥΡΙΖΑ στην Αιτωλοακαρνανία
- Γλυκά Νερά: Ο Μπάμπης Αναγνωστόπουλος ετοιμάζεται να δώσει πανελλήνιες
- Νέα Φιλαδέλφεια: Σύλληψη γνωστού τράπερ για παράνομη οπλοφορία και κατοχή ναρκωτικών
- Δημοφιλέστερες Ειδήσεις Dikaiologitika
- Ανοίγει αύριο το Market Pass: «Στον αέρα» το vouchers.gov.gr για τις αιτήσεις
- Χειροπέδες σε δύο διακινητές μεταναστών στην Πιερία
- Εξωδικαστικός μηχανισμός: Τι αλλάζει για χρέη σε τράπεζες δημόσιο και ταμεία
- Επίσκεψη «έκπληξη» Μπάιντεν στο Κίεβο
- Κοινό μέτωπο ΑΑΔΕ και Ευρωπαϊκής Εισαγγελίας κατά του οργανωμένου εγκλήματος
- Νέο αλεύρι από όσπρια μειώνει τον κίνδυνο καρδιακών παθήσεων
- ΟΑΕΔ - ΔΥΠΑ: Ξεκινούν οι αιτήσεις για πρόσληψη ανέργων σε λιγνιτικές περιοχές με επιχορήγηση έως 16.794 ευρώ
- Ο Μπάμπης Αναγνωστόπουλος θα δώσει πανελλήνιες εξετάσεις
- Θρήνος για τον 40χρονο πατέρα: «Έχασε την μάχη» μετά τον τραυματισμό του με αλυσοπρίονο
- ΑΣΕΠ: Πότε βγαίνουν οι προκηρύξεις για τις προσλήψεις των εκπαιδευτικών
- Τελευταία Νέα Dikaiologitika
- Χειροπέδες σε δύο διακινητές μεταναστών στην Πιερία
- Κοινό μέτωπο ΑΑΔΕ και Ευρωπαϊκής Εισαγγελίας κατά του οργανωμένου εγκλήματος
- Ανοίγει αύριο το Market Pass: «Στον αέρα» το vouchers.gov.gr για τις αιτήσεις
- Λιάγκας για Βανδή – Μπισμπίκη, «Έχουν σχεδόν ξεμωραθεί και κάνουν αυτά τα πράγματα δημόσια»
- Θρήνος για τον 40χρονο πατέρα: «Έχασε την μάχη» μετά τον τραυματισμό του με αλυσοπρίονο
- Βίντεο - ντοκουμέντο από την Αγία Βαρβάρα: Γαζώνουν σπίτια και αυτοκίνητα με καλάσνικοφ και εξαφανίζονται
- Ο Μπάμπης Αναγνωστόπουλος θα δώσει πανελλήνιες εξετάσεις
- Νέο αλεύρι από όσπρια μειώνει τον κίνδυνο καρδιακών παθήσεων
- Επίσκεψη «έκπληξη» Μπάιντεν στο Κίεβο
- Τελευταία Νέα Κατηγορίας Ειδήσεις
- Χανιά | Έρχεται το Κισσαμίτικο καρναβάλι – Μεγάλη παρέλαση με 17 ομάδες
- Γαλλία: Ακροδεξιοί φοιτητές έβαψαν άσπρο ένα άγαλμα του Βίκτωρος Ουγκώ γιατί τους φαινόταν «πολύ σκούρο»
- Με διευρυμένη ατζέντα στην Αθήνα ο Αμερικάνος ΥΠΕΞ
- Χρήματα για να αγοραστούν 50 νέα σκάφη επιτήρησης δίνει το υπουργείο Μετανάστευσης και Ασύλου στο Λιμενικό Σώμα
- Λιάγκας για Βανδή-Μπισμπίκη: «Έχουν σχεδόν ξεμωραθεί και κάνουν αυτά τα πράγματα δημόσια» (Video)
- Πόσο κρατάει η ανοσία μετά τη νόσηση από κορονοϊό: Νέα έρευνα «ρίχνει φως» στο ερώτημα
- Χειμερινές εκπτώσεις 2023: Δείτε μέχρι πότε θα διαρκέσουν
- Ανανεωτική Αριστερά: Ισχυρό ΠΑΣΟΚ-ΚΙΝΑΛ στις εκλογές για να υπάρξει προοδευτική απάντηση με σοσιαλδημοκρατικό πρόσημο
- «Τελειωμένος» ο Ράντονιτς από τον Παναθηναϊκό – «Εμπλοκή» με την αποζημίωση