Kodning med konstanter er den praksis at bruge konstanter at holde stedet for en abstrakt , fast variabel , der ikke kan defineres ved de grundlæggende datatyper såsom Booleans eller heltal . For eksempel forestille sig , at du er ved at skrive en skak -program. Mens antallet af brikker på brættet kan til enhver tid , let repræsenteret med et positivt tal , den nuværende tilstand af bestyrelsen ikke kan. Tildeling tilfældige værdier 0 , 1 og 2 til at være den konstante variabler INGEN, TJEK og CHECKMATE ville være et klassisk tilfælde af konstante kodning. Den variable holdes konstant , da værdierne er rent repræsentationelle og ikke ændrer hele programmet. Klarhed
Alle programmører , gode eller dårlige , vil på et tidspunkt blive forvirret af et stykke kode . Brug konstanter kan hjælpe med at forhindre nogle af de værste tilfælde ved at klarlægge betydningen af koden. Ingen ønsker at tilbringe timer at analysere en løkke , der starter med " hvis status == 3" bare for at regne ud, hvad "3" betyder , især ikke hvis der er flere sløjfer , inden for hvilke siger " hvis farve == true " og " , hvis chessPiece == 5 ! " Klarhed er især vigtigt for lange projekter, da det kan være svært at huske selv den kode, du skrev selv nogle gange .
Convenience
Erklæring af konstanter før tid tendens til at være mere praktisk i det lange løb , især hvis der er mange af dem . Antag, at du opdager, at en eller flere af dine konstanter kollidere med hinanden og er nødt til at blive ændret. Går igennem, og skiftende hver brug af " 2" til "3 " er trættende og kan forårsage flere fejl ( dette kaldes kode minedrift ), men ændre en enkelt erklæring om " int const CHECKMATE = 2 " til " int const CHECKMATE = 3" er enkel og nem.
Fejlkontrol
den største fordel ved konstante kodning er , at mange fejl vil blive fanget af compileren snarere end skaber kaos ved runtime . Vigtigst er det, konstant typekontrol forhindrer fremtidige programmører fra at komme sammen og tildele nye værdier til variabler, der ikke bør ændres. Små fejl, ligesom stavefejl , har også tendens til at være mindre af en hovedpine. (Det er ganske vanskeligt at uheld skrive " TJEK " i stedet for "NONE " !)
Resultater
Brug konstanter givet fald også kan hjælpe din kode køre hurtigere, selv om dette afhænger i høj grad af den specifikke compiler brugt og sprog. Hvis en konstant behandles som en fast værdi snarere end en variabel , for eksempel , kan compileren indlæse færre anvisninger ved runtime . I nogle tilfælde konstanter vil blive gemt i hurtigere indlæsning hukommelse . Typisk dog ydeevneforbedringer fra konstanter er minimal og vil ikke gøre meget af en forskel.