Encapsulamiento Cliente/proveedor Proveedor es quien escribe el código de la clase e implanta los métodos. Se compromete a cumplir con un contrato de código, o interfase. La interfase define QUE hace el objeto Una interfase queda definida por métodos. Cliente es quien usa la clase para crear objetos, y manipular sus propiedes (o estado) y métodos. El cliente espera que el contrato establecido con el proveedor se cumpla de acuerdo a lo definido a la interfase. Encapsulamiento consiste en que el proveedor de la clase oculta COMO se realiza la implantación pero respeta la interfase o el QUE del objeto. El encapsulamiento se basa en: + Abstracción + Ocultamiento + Asignación de responsabilidades Existen paquetes de clases con responsibilidades bien definidas. Abstracción. La abstracción consiste en identificar los simbolos y operaciones para representar información. Tipo Abstracto de Datos (TDA o ADT) es la definición de simbolos y operaciones para manipular información Ocultamiento de implantación. Ocultar como un objeto realizas sus operaciones Asignación de responsabilidades. Definir que métodos deben de hacer cada clase y no repetir el funcionamiento en dos o mas clases.