Clase6

Páginas: 7 (1552 palabras) Publicado: 5 de mayo de 2015
Curso Python en 8 clases
Clase 6: Introduccion a POO
Autor:
Versión:
Licencia:

Sebastián Bassi
1.4
Creative Commons BY-NC-SA 2.5. (ver texto completo)

Introducción
Si bien Python es un lenguaje orientado a objetos (Programación Orientada a Objetos, POO), es posible
utilizarlo sin tener en cuenta explicitamente este hecho. Por eso se dice que Python es un lenguaje "Multi
paradigma". Los objetosya han sido usados de manera implícita: Los tipos de datos (str, dict, listas) son
objetos. Cada uno tiene funciones asociadas (llamadas métodos en la jerga) y sus atributos. Por ejemplo
str.lower() devuelve un str en minúscula, porque todos los objetos de esta clase (str) tienen el método
lower() asociados.
Una clase se puede usar para definir un tipo de datos, y si bien los tipos de datosincluidos en Python son
variados, su capacidad para hacer representaciones (modelos) del mundo real es limitada. Es por eso
que hace falta poder definir nuestras propias clases.

Jerga de POO
Clases: Generadores de objetos
Es una estructura que se usa como plantilla para crear objetos (de una clase). Esta plantilla describe
tanto el estado como el comportamiento de los objetos que se crean a partir deella. El estado es
mantenido via los atributos y el comportamiento via los métodos.

Instancia: Implementación particular de una clase
Cada instancia es una implementación de una clase. Si tenemos la clase orca, una instancia puede ser
Willy. Es posible crear varias instancias independientes una de otra (como Shamu que es independiente
de Willy).

Atributos (o variables de instancia):Características de los objetos
Cada objeto tiene sus atributos, como por ejemplo peso. Willy tendrá un peso distinto de Shamu. Aunque
ambas instancias pertenecen a la misma clase (orca). Comparten el tipo de atributo. Podriamos tener la
clase perro con instancias Lassie y Laika con el atributo color_de_pelo que no será compartido con las
instancias de la clase orca.

Métodos: Comportamiento de los objetos
Unmétodo es una función que pertenece a una clase. Los métodos definen como se portan los objetos
derivados de una clase. La clase perro puede tener el método ladrar. Algunos métodos pueden usar
parámetros (como ladrar(enojado)).

Herencia: Las propiedades se trasmiten de clases relacionadas
Las clases pueden relacionarse entre ellas y no ser entidades aisladas. Es posible tener una clase
mamífero conpropiedades comunes a la case orca y la clase perro. Por ejemplo el método reproducción
puede ser definido para la clase mamífero. No sera necesario crear para ellos el método reproducción ya
que lo heredarán.

Variable de clases: caracteristicas de las clases
Son variables asociadas a todos los objetos de una clase. Cuando un objeto es creado, el objeto hereda
la variable de clase.Polimorfismo
Es la habilidad para los distintos objetos de responder al mismo método de manera distinto. Es lo que
permite por ejemplo al iterar sobre una lista, un set, diccionario, archivo, etc de la misma manera:
for nombre in secuencia:
# hacer algo

Encapsulación
Ocultar la operación interna de un objeto y dar acceso a los programadores por métodos públicos. La
encapsulación en Python no es total, sinomas bien nominativa (también conocida como
pseudo-encapsulación). Los métodos de uso interno se marcan como tales y los programadores eligen (o
no) respetar.

Creando clases
Modelo:
class NOMBRE:
[cuerpo]
Una clase que hace algo:
class Square:
def __init__(self):
self.side=1
Uso:
>>>
>>>
1
>>>
>>>
5

Bob=Square() # Bob es una instancia de Square.
Bob.side # Veamos el valor de side.
Bob.side=5 #Asignar un valor nuevo a side.
Bob.side # Ver el valor de side.

Este cambio es específico para una instancia, al crearse una nueva, se ejecuta __initi__ de nuevo:
>>> Krusty=Square()
>>> Krusty.side
1
Asignando una variable a la clase (y no solo a la instancia):
>>> class Square:
side=1
>>> Square.side
1

Es posible usar las variables de clases para controlar cuantas instancias de una clase han...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Clase6
  • Clase6
  • Clase6 Archivos
  • Clase6 2
  • SEM2 clase6
  • clase6A procesos bioquimicos postmortem
  • Clase6 Emprendimiento E Innovacion
  • Clase6 Regiones naturales del Per

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS