Codigo limpio y refactorización

Repetición de código en múltiples lugares, en lugar de reutilizar funciones o abstraer la lógica.

Esto ya lo hemos visto en el principio de DRY (Don't Repeat Yourself).


Ejemplo Mal

1public class DiscountCalculator {
2    public double calculateDiscount(double price) {
3        double discount = price * 0.1;
4        return price - discount;
5    }
6
7    public double calculateBlackFridayDiscount(double price) {
8        double discount = price * 0.2;
9        return price - discount;
10    }
11}

Ejemplo Corregido

1public class DiscountCalculator {
2    public double calculateDiscount(double price, double rate) {
3        double discount = price * rate;
4        return price - discount;
5    }
6}