martes, 21 de febrero de 2012

¿Qué es encapsulamiento?


Esta característica es la que denota la capacidad del objeto de responder a peticiones a través de sus métodos sin la necesidad de exponer los medios utilizados para llegar a brindar estos resultados. O sea, el método Acelerar() del objeto “auto”, siempre aumentará la velocidad, sin necesidad de tener conocimiento de cuáles son los recursos que ejecuta para llegar a brindar este resultado.

Los objetos deben comunicarse solo a través de su protocolo de modo que la responsabilidad en administrar tanto el comportamiento como el respetar los invariantes de clase sea solo del objeto que implementa dicho comportamiento. Esto además es una condición necesaria para permitir el polimorfismo.

La utilidad del encapsulamiento va por la facilidad para manejar la complejidad, ya que las Clases se ven como cajas negras donde sólo se conoce el comportamiento pero no los detalles internos, y esto es conveniente porque solo interesará conocer qué hace la Clase pero no será necesario saber cómo lo hace.

El encapsulamiento también es llamado “ocultamiento de la información”, esto asegura que los objetos no pueden cambiar el estado interno de otros objetos de maneras inesperadas; solamente los propios métodos internos del objeto pueden acceder a su estado. Cada tipo de objeto expone una interfaz a otros objetos que especifica cómo otros objetos pueden interactuar con él. Algunos lenguajes permiten un acceso directo a los datos internos del objeto de una manera controlada y limitando el grado de abstracción.

Para encapsular ocupamos palabras como “public”, “private”, etc.

0 comentarios:

Publicar un comentario