Sunday, March 18, 2012

Code Metrics

Στη Visual Studio 2010 υπάρχει ένα εργαλείο το οποίο σε βοηθά να αξιολογήσεις τον κώδικά σου.

Συγκεκριμένα σου βγάζει τιμές για τους πιο κάτω δείκτες:
  • Maintainability Index - κλίμακα 0-100. Βαθμολογία για το πόσο εύκολη είναι η συντήρηση του κώδικα
  • Cyclomatic Complexity - ο υπολογισμός της πολυπλοκότητας βασίζεται στα μοναδικά μονοπάτια του κώδικα- λαμβάνοντας υπόψη τα condition statements.
  • Depth of Inheritance - Το βάθος στην ιεραρχία στο οποίο φτάνει (κληρονομικότητα κλάσεων)
  • Class Coupling - Μετρά την εξάρτηση μιας κλάσης με  άλλες κλάσεις.
  • Lines of Code - Αριθμός των γραμμών 
Για να τρέξεις το εργαλείο, πατάς δεξί κλικ πάνω στο solution από το Solution Explorer, και επιλέγεις "Calculate Code Metrics".


Όταν το κάνεις αυτό, ανοίγει ένα παράθυρο με τα αποτελέσματα, που είναι κάπως έτσι:



Η πρώτη στήλη έχει τα αντικείμενα ιεραρχικά, και η ανάλυση φτάνει μέχρι και σε επίπεδο Property.

Η σημαντική στήλη είναι η δεύτερη, αφού μας ενδιαφέρει ο κώδικάς μας να μπορεί να συντηρηθεί εύκολα. Συντήρηση σημαίνει αλλαγές! Ένα λογισμικό θα φέρει περισσότερα κέρδη εάν δεν χρειάζονται πολλές αλλαγές για να γίνει customized, και πιο σημαντικό για να διορθωθούν λάθη.

Οι υπόλοιπες στήλες είναι μετρήσεις που βοήθησαν στον υπολογισμό της δεύτερης στήλης.

Δεν πρέπει να παραβλέπουμε το γεγονός ότι η εφαρμογή το πιο πιθανόν να κτίζεται πάνω στο .net framework και αναγκαστικά το βάθος της κληρονομικότητας φτάνει στο 7, απλά και μόνο επειδή χρησιμοποίησες την κλάση Form.

Όπως και να 'χει, πιστεύω ότι είναι χρήσιμο εργαλείο και θα το χρησιμοποιώ για να βεβαιώνομαι ότι θα κρατώ την ποιότητα του κώδικα σε καλά επίπεδα.

No comments:

Post a Comment