Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De toegenomen complexiteit van moderne softwaretoepassingen maakt het ook moeilijker om de code betrouwbaar en onderhoudbaar te maken. Code metrics is een set softwaremaatregelen die ontwikkelaars beter inzicht geven in de code die ze ontwikkelen. Door gebruik te maken van codemetrieken kunnen ontwikkelaars begrijpen welke typen of methoden moeten worden herwerkt of grondiger moeten worden getest. Ontwikkelingsteams kunnen potentiële risico's identificeren, inzicht krijgen in de huidige status van een project en de voortgang volgen tijdens de softwareontwikkeling.
Ontwikkelaars kunnen Visual Studio gebruiken om metrische gegevens over code te genereren die de complexiteit en onderhoudbaarheid van hun beheerde code meten. Gegevens over codemetrie kunnen worden gegenereerd voor een hele oplossing of een enkel project.
Zie Procedure: Gegevens met codemetrische gegevens genereren in Visual Studio voor meer informatie over het genereren van gegevens over codemetrische gegevens.
Software metingen
In de volgende lijst ziet u de resultaten van de metrische codegegevens die door Visual Studio worden berekend:
Onderhoudbaarheid Index - Berekent een indexwaarde tussen 0 en 100 die het relatieve gemak van het onderhouden van de code weergeeft. Een hoge waarde betekent een betere onderhoudbaarheid Kleurgecodeerde classificaties kunnen worden gebruikt om snel probleemgebieden in uw code te identificeren. Een groene beoordeling ligt tussen 20 en 100 en geeft aan dat de code goed onderhoudbaar is. Een gele beoordeling ligt tussen 10 en 19 en geeft aan dat de code redelijk te onderhouden is. Een rode beoordeling is een beoordeling tussen 0 en 9 en geeft een lage onderhoudsvriendelijkheid aan. Zie Bereik en betekenis van de onderhoudbaarheidsindex voor meer informatie.
Cyclomatische complexiteit - Meet de structurele complexiteit van de code. Het wordt gemaakt door het aantal verschillende codepaden in de stroom van het programma te berekenen. Een programma met een complexe controlestroom vereist meer tests om een goede codedekking te bereiken en is minder onderhoudbaar. Voor meer informatie, zie Cyclomatische complexiteit.
Diepte van overerving - Geeft het aantal verschillende klassen aan dat van elkaar erft, helemaal terug naar de basisklasse. Diepte van overerving is vergelijkbaar met klassekoppeling in die zin dat een verandering in een basisklasse van invloed kan zijn op elk van de overgeërfde klassen. Hoe hoger dit getal, hoe dieper de overerving en hoe groter de kans dat wijzigingen in de basisklasse resulteren in een breukverandering. Voor Diepte van overerving is een lage waarde goed en een hoge waarde slecht. Zie Diepte van overerving voor meer informatie.
Klassekoppeling - Meet de koppeling aan unieke klassen door middel van parameters, lokale variabelen, retourtypen, methodeaanroepen, generieke of sjablooninstantiaties, basisklassen, interface-implementaties, velden die zijn gedefinieerd op externe typen en attribuutdecoratie. Een goed softwareontwerp schrijft voor dat typen en methoden een hoge samenhang en een lage koppeling moeten hebben. Hoge koppeling duidt op een ontwerp dat moeilijk te hergebruiken en te onderhouden is vanwege de vele onderlinge afhankelijkheden van andere typen. Voor meer informatie, zie Klasse koppeling.
Regels broncode - Geeft het exacte aantal broncoderegels aan dat aanwezig is in uw bronbestand, inclusief lege regels. Deze metrische gegevens zijn beschikbaar vanaf Visual Studio 2019 versie 16.4 en Microsoft.CodeAnalysis.Metrics (2.9.5).
Regels uitvoerbare code - Geeft het geschatte aantal uitvoerbare coderegels of bewerkingen aan. Dit is een telling van het aantal bewerkingen in uitvoerbare code. Deze metrische gegevens zijn beschikbaar vanaf Visual Studio 2019 versie 16.4 en Microsoft.CodeAnalysis.Metrics (2.9.5). De waarde komt meestal nauw overeen met de vorige metrische gegevens, Coderegels, de metrische gegevens op basis van MSIL-instructies die in de oude modus worden gebruikt.
Anonieme methoden
Een anonieme methode is gewoon een methode die geen naam heeft. Anonieme methoden worden meestal gebruikt om een codeblok door te geven als een gedelegeerde parameter. Resultaten van metrische codegegevens voor een anonieme methode die is gedeclareerd in een lid, zoals een methode of accessor, worden gekoppeld aan het lid dat de methode declareert. Ze zijn niet gekoppeld aan het lid dat de methode aanroept.
Gegenereerde code
Sommige softwaretools en compilers genereren code die aan een project wordt toegevoegd en die de projectontwikkelaar niet ziet of niet mag veranderen. Meestal negeert Code Metrics gegenereerde code wanneer de waarden voor metrische gegevens worden berekend. Hierdoor kunnen de metrische waarden weergeven wat de ontwikkelaar kan zien en wijzigen.
Code die is gegenereerd voor Windows Forms wordt niet genegeerd, omdat het code is die de ontwikkelaar kan zien en wijzigen.