MAGICZNE LICZBY

Mar 04 2023
Magiczne liczby to jeden ze sposobów pisania czystego kodu. Witaj przyjacielu, teraz porozmawiamy o ważnej zasadzie, która sprawia, że ​​kod jest łatwiejszy do odczytania i zmiany oraz sprawia, że ​​kod ma przyjemny zapach.

Magiczne liczby to jeden ze sposobów pisania czystego kodu.
Witaj przyjacielu, teraz porozmawiamy o ważnej zasadzie, która sprawia, że ​​kod jest łatwiejszy do odczytania i zmiany oraz sprawia, że ​​kod ma przyjemny zapach.

Najpierw wyjaśnijmy, czym jest zapach kodu, zapach kodu jest wskaźnikiem problemów, które można rozwiązać podczas refaktoryzacji, łatwo je wykryć i złapać, a także je naprawić.

załóżmy ze mną, że po ukończeniu zadania kodowania, które zajmuje ci 8 godzin i mówi, że OMG w końcu się skończyło, zajmuje to dużo czasu !!!, I popchnąłeś swój kod, a kilka kodów wygląda tak.

double deductFromStanderdEmployee(JouniorEmployee standerdEmployee){
 standerdEmplyee.gross= standerdEmplyee.gross - (3.3 + 2.3) / 100 * standerdEmplyee.gross;
}

teraz lider zespołu musi zmienić świadczenia medyczne na 3,5 procent i każe to zrobić twojemu przyjacielowi.
twój przyjaciel teraz spójrz na kod i jego wrażenie, który numer to podatek od usług medycznych 3,3 czy 2,3 ?️

Więc teraz problem jest bardzo jasny, używasz unikalnej wartości o niewyjaśnionym znaczeniu, czyli magicznej liczby. lepiej jest użyć nazwanej stałej do zidentyfikowania magicznej liczby. Pozwól nam dokonać refaktoryzacji twojego kodu, przyjacielu.

const double GOVERNMENTAL_TAXES_PERSENTAGE=3.3;
const double MEDICAL_SERVICES_TAXES_PERSENTAGE=2.3;
double deductFromStanderdEmployee(JouniorEmployee standerdEmployee){
 standerdEmplyee.gross= standerdEmplyee.gross - (GOVERNMENTAL_TAXES_PERSENTAGE + MEDICAL_SERVICES_TAXES_PERSENTAGE) / 100 * standerdEmplyee.gross;
}

teraz pytasz, co z 100, czy to nie jest liczba magiczna?
Powiem nie, to nie jest magiczna liczba, możemy zauważyć, że obliczamy procent, więc jest bardzo wyczyszczony i pozostawiony. to jest jak pętla for na przykład:

for (int i=0;i<n;i++){
    //some code here;
}

Podsumowując , zauważyliśmy, że magiczne liczby powodują pewne konflikty, więc musimy to dobrze zauważyć w naszej refaktoryzacji, aby nie wpaść w te błędy.

Dziękuję za przeczytanie Mam nadzieję, że spotkamy się w moim następnym artykule.