Grupo 2

 

Ariel Torricos

Maria Gonzales

Octavio Condori

Rider Mamani

Hugo Loza

 

 

 

Violaciones a DRY
(Don't Repeat Yourself)

javapublic void log(String msg) {
    System.out.println("[LOG]: " + msg);
}

public void logError(String msg) {
    System.out.println("[LOG]: " + msg);
}

Duplicación en logging

Validación de email

// En sendEmailNotification
if (email != null && email.contains("@")) { ... }

// En validateEmail
return email != null && email.contains("@");

// En checkEmail  
return email != null && email.contains("@");

Violaciones a KISS
(Keep It Simple, Stupid)

Metodo sobrecomplejo

public void sendAllNotifications(String email, String phoneNumber, String deviceId, String subject, String message) {
    sendEmailNotification(email, subject, message);
    sendSMSNotification(phoneNumber, message);
    sendPushNotification(deviceId, subject, message);
}

Validaciones inconsistentes

public void sendAllNotifications(String email, String phoneNumber, String deviceId, String subject, String message) {
    sendEmailNotification(email, subject, message);
    sendSMSNotification(phoneNumber, message);
    sendPushNotification(deviceId, subject, message);
}
// Email: verifica @ pero no valida formato completo
if (email != null && email.contains("@"))

// Teléfono: solo verifica longitud >= 10
if (phoneNumber != null && phoneNumber.length() >= 10)

// Device: verifica longitud > 5
if (deviceId != null && deviceId.length() > 5)

Violaciones a YANG
(You Aren't Gonna Need It)

public void prepareNotificationQueue() {
    // Método vacío
}

Método vacío

Métodos duplicados

public boolean validateEmail(String email) { ... }

public boolean checkEmail(String email) { ... }

deck

By Alexa Guzman