Desarrollo en curso, en breve se publicarán el resto de temas.

Capítulo 12: Buenas Prácticas y Estilo de Código

La calidad del código no se mide solo por si funciona, sino por si es legible, mantenible y predecible. Este capítulo explora las buenas prácticas que distinguen a los desarrolladores profesionales.

12.1. Importancia del Estilo Consistente

El código se lee mucho más frecuentemente de lo que se escribe. Un estilo consistente facilita la colaboración y reduce errores.

// Inconsistente (difícil de leer)
let x=5; let y=10
if(x>y){console.log("x es mayor")}

// Consistente (fácil de leer)
let x = 5;
let y = 10;

if (x > y) {
    console.log("x es mayor");
}

12.2. Naming Conventions: camelCase

JavaScript usa camelCase como convención estándar:

// ✓ Variables y funciones: camelCase
let nombreUsuario = "Juan";
let edadEnAños = 30;
function calcularPromedio(notas) { }
function obtenerDatosDelServidor() { }

// ✓ Constantes: UPPER_SNAKE_CASE
const MAX_INTENTOS = 3;
const URL_BASE = "https://api.ejemplo.com";

// ✓ Clases: PascalCase (estudiaremos en POO)
class Usuario { }
class CalculadoraAvanzada { }

// Evitar
let usuario_nombre;     // snake_case (Python style)
let NOMBRE;            // Confunde con constante
let n, x, a;           // Nombres crípticos

12.3. Comentarios: Explicar el Porqué

Los comentarios deben explicar por qué haces algo, no qué estás haciendo (el código ya lo dice).

Tipos de comentarios


12.4. Indentación y Espaciado


12.5. Evitar Antipatrones Comunes

Antipatrón 1: Variables globales

Antipatrón 2: Uso de eval()

Antipatrón 3: Condiciones complejas sin paréntesis


12.6. Herramientas: ESLint y Prettier

Estas herramientas automatizan el control de estilo:


12.7. Principios SOLID Adaptados a JavaScript

S: Single Responsibility

Una función debe tener una única responsabilidad:

O: Open/Closed

Abierto para extensión, cerrado para modificación:

L, I, D: Principios Avanzados (Próximos Temas)

Los tres principios restantes de SOLID requieren conceptos de Programación Orientada a Objetos que se estudiarán en detalle más adelante:

  • L (Liskov Substitution Principle): Los objetos de clases derivadas deben poder sustituir a objetos de sus clases base. Se trabaja en profundidad en temas de herencia y polimorfismo.

  • I (Interface Segregation Principle): Los clientes no deben depender de interfaces que no usan. Se estudia en temas de arquitectura de módulos y TypeScript.

  • D (Dependency Inversion Principle): Las dependencias deben invertirse desde implementaciones concretas hacia abstracciones. Se desarrolla en temas de inyección de dependencias y patrones de diseño.

Para ahora: Enfócate en dominar S y O. Estos principios te enseñarán a escribir funciones más limpias, modulares y fáciles de mantener, que es exactamente lo que necesitas en este nivel.


12.8. Lectura de Código de Calidad

Aprender leyendo código bien escrito es invaluable:

  • Proyectos open source en GitHub

  • Código de librerías populares (lodash, axios)

  • Repositorios didácticos en MDN Web Docs


Resumen del Capítulo

Las buenas prácticas y el estilo consistente transforman código funcional en código profesional. Invertir tiempo en escribir código limpio ahora ahorra debugging y mantenimiento después.

💡 Conceptos Clave:

  • camelCase: Convención estándar de nombres

  • Comentarios significativos: Explica el "porqué"

  • Indentación consistente: 4 espacios

  • Evitar antipatrones: var, eval(), condiciones confusas

  • Herramientas de linting: ESLint, Prettier

  • SOLID: Principios de buen diseño

  • Lectura activa: Aprender de código de calidad

🤔 Preguntas de Reflexión:

  1. ¿Por qué es importante el estilo de código en un equipo?

  2. ¿Cuál es la diferencia entre comentarios buenos y malos?

  3. Da ejemplos de cuándo Single Responsibility mejora el código.

  4. ¿Cómo te ayudan herramientas como ESLint a escribir mejor código?

  5. Refactoriza código existente aplicando estos principios.


Última actualización

¿Te fue útil?