Encapsulación
¿Qué es la encapsulación?
La encapsulación es un principio de diseño de software que consiste en reunir datos y lógica dentro de una misma estructura, limitando el acceso directo desde fuera. Su objetivo es proteger el estado interno y exponer solo lo necesario.
Es una idea muy asociada a la programación orientada a objetos, aunque también aparece en módulos, componentes y APIs bien diseñadas.
¿Para qué sirve la encapsulación?
La encapsulación permite:
- Reducir dependencias innecesarias entre partes del código.
- Proteger datos internos frente a modificaciones incorrectas.
- Hacer el código más mantenible y predecible.
- Exponer interfaces claras en lugar de detalles internos.
Ejemplo básico
class Cuenta {
#saldo = 0;
ingresar(cantidad) {
this.#saldo += cantidad;
}
verSaldo() {
return this.#saldo;
}
}
En este ejemplo, #saldo no puede modificarse directamente desde fuera de la clase, lo que ayuda a controlar mejor el estado del objeto.
Características de la encapsulación
- Oculta detalles internos de implementación.
- Expone solo métodos o propiedades necesarios.
- Ayuda a prevenir errores por uso incorrecto.
- Facilita cambios internos sin romper el código externo.
¿Dónde se usa?
- En clases y objetos de programación orientada a objetos.
- En módulos JavaScript que exportan solo ciertas funciones.
- En componentes de frontend que encapsulan estado y comportamiento.
- En librerías y APIs con interfaces públicas definidas.
Conclusión
La encapsulación ayuda a construir software más robusto, claro y mantenible. En vez de dejar todo expuesto, organiza la lógica y protege el estado interno para que el sistema sea más fácil de entender y evolucionar.