Code Smell 87 - Inconsistent Parameters Sorting

Code Smell 87 - Inconsistent Parameters Sorting

Subscribe to my newsletter and never miss my upcoming articles

Listen to this article

Be consistent with the parameters you use. Code is prose.

TL;DR: Don't confuse you readers. Keep the order.

Problems

  • Readability

  • Consistency

Solutions

  1. Refactor and change parameters order.

  2. Use named parameters

Sample Code

Wrong

function giveFirstDoseOfVaccine(person, vaccine) {
  //
}

function giveSecondDoseOfVaccine(vaccine, person) {
  //
}


giveFirstDoseOfVaccine(jane, pfizer);
giveSecondDoseOfVaccine(jane, pfizer);  //Unnoticed mistake
function giveFirstDoseOfVaccine(person, vaccine) {
  //
}

function giveSecondDoseOfVaccine(person, vaccine) {
  //
}


giveFirstDoseOfVaccine(jane, pfizer);
giveSecondDoseOfVaccine(jane, pfizer);  //jane is immunized

Detection

  • Some very smart linters may be able to compare arguments and hint for possible mistakes.

Tags

  • Readability

Conclusion

This is a very simple smell.

Readability is very important to avoid mistakes.

Relations

Credits

Photo by Lance Grandahl on Unsplash


Computers are good at following instructions, but not at reading your mind.

Donald Knuth


This article is part of the CodeSmell Series.

 
Share this