Una buena práctica cuando se desarrolla en un lenguaje orientado a objetos es esconder los detalles de la implementación de los usuarios de la clase (), de manera que se pueda modificar el funcionamiento interno sin necesidad de romper la API pública.