Modificadores

Solo disponible en BuenasTareas
  • Páginas : 2 (456 palabras )
  • Descarga(s) : 10
  • Publicado : 19 de agosto de 2010
Leer documento completo
Vista previa del texto
Encapsulamiento en python
Publicado en Python por Arturo Elias Antón en 27 Agosto 2008
Tags: Ejemplo Python, Encapsulacion, Encapsulacion en python, encapsulamiento en python, Python

La idea deencapsulamiento segun Grady Booch es

“La abstracción y el encapsulamiento son conceptos complementarios: la abstracción se centra en el comportamiento observable de un objeto, mientras elencapsulamiento se centra en la implementación que da lugar a este comportamiento. El encapsulamiento se consigue a menudo mediante la ocultación de información, que es el proceso de ocultar todos secretosde un objeto que no contribuyen a sus caracteristicas esenciales; típicamente, la estructura de un objeto esta oculta, así como la implementación de sus metodos.”[Análisis y diseño orientado aobjetos con aplicaciones *]

En otras palabras es impedir el acceso al los métodos o variables del objeto, para que solo se puedan usar dentro de la instancia del objeto. Esto en los lenguajes como Java oC# lo logran con unos modificadores de acceso (anteponen a la definición del método o propiedad public, private, protected, etc.).
Los modificadores de acceso permiten al diseñador de clasesdelimitar la frontera entre lo que es accesible para los usuarios de la clase, lo que es estrictamente privado y ‘no importa’ a nadie más que al diseñador de la clase e incluso lo que podría llegar aimportar a otros diseñadores de clases que quisieran alterar, completar o especializar el comportamiento de la clase.
Python no cuenta con estos modificadores de acceso para lograr el encapsulamiento. Porque el acceso a una variable o método viene dado por su nombre. Para que un método sea privado en Python lo que hay que hacer es anteponerle dos guiones bajos “__” antes del nombre y no dejar quetermine con dos guiones bajos “__”. Lo mismo para las variable.

Un ejemplo se vera en encapsulacion.py

#!/usr/bin/env python
# Nombre de Fichero : encapsulacion.py

class Persona(object) :...
tracking img