Refaktoring: Instrukcje warunkowe

Opublikowano: 26.08.2021 - tagi: Kod Refaktoring

Każdy, kto przynajmniej poznał podstawy, któregoś z języków programowania napotkał na instrukcję warunkową: if.

Z tą instrukcją jest taki problem, że w łatwy sposób można pogorszyć czytelność kodu. Szczególnie jeśli korzystamy z zagnieżdżonych instrukcji warunkowych.

Unikaj zagniżdżonych instrukcji warunkowych

Nie jest tajemnicą, że programista częściej czyta kod niż go pisze. Dlatego naszym celem powinna być taka implementacja która zostanie zrozumiana przez innego programistę bez większego wysiłku.

Spójrzmy na poniższy kod:

if (is_file_uploaded) {
  if (is_file_extension_is_correct) {
    // Oczekiwana operacja
  } else {
    // Zgłoś błąd
  }
} else {
  // Zgłoś błąd
}

Zagnieżdżenie powoduje, że kod staje się trudniejsz w czytaniu i programista musi spędzić więcej czasu na jego analizę.

Można na szczęście go uprościć. Wystarczy trzymać się zasady: niech oczekiwany wynik będzie wykonany lub zwracany na końcu funkcji.

Ten sam kod, ale po refaktoringu:

if (!is_file_uploaded) {
  // Zgłoś błąd
}

if (!is_file_extension_is_correct) {
  // Zgłoś błąd
}

// Oczekiwana operacja

Wystarczyło użyć negacji w instrukcjach warunków i udało nam się pozbyć zagnieżdżeń! Taki kod czyta się znacznie lepiej.