Comunicacion entre objetos

Jose Caballero jcaballero.hep en gmail.com
Mar Feb 10 16:00:18 CET 2009


Hay que tener cuidado con la nomenclatura. Si Fernando esta aprendiendo y
aun no tiene los conceptos muy claros, decirle que "sensor herede de
valvula" lo puede liar mas aun.

Saludos,
Jose



2009/2/9 Eduardo Matus <ematus en gmail.com>

> esto es lo que quieres hacer... pero pero en concepto esta mal... deberias
> hacer que sensor herede de Valvula....
>
> #Nombre Archivo: Valvula.py
>
> class Valvula:
>    def __init__(self, sensor1):
>        self.condicion = 0  #(0= cerrado, 1=abierto)
>       self.caudal = 0     #caudal inicial
>        self.sensor1 = sensor1
>
>
>   def Abrir(self):
>       self.condicion = 1
>
>   def Cerrar(self):
>       self.condicion = 0
>
>   def Caudal_Actual(sefl):
>       self.caudal=sensor1.Caudal_Medido()        return self.caudal
>
> ---------------------------------------
> #Nombre Archivo: Sensor.py
> class Sensor():
>
>   def __init__(self):
>       self.caudal = 10
>
>   def Caudal_Medido(self):
>       #codigo para medir
>       return self.caudal #por ejemplo
>
> >>> import Valvula
> >>> import Sensor
> >>> sensor1 = Sensor()
> >>> valvula1 = Valvula(sensor1)
> >>> valvula1.Caudal_Actual()
>
>
> On Tue, Feb 10, 2009 at 12:03 AM, fernando parodi <parodi.fer en gmail.com
> >wrote:
>
> > En casi todos los manuales en los que busque decia "los objetos se
> > comunican
> > mediante mensajaes" (?)
> > pero no logro comprender como  y los ejemplos que dan son realmente
> > inutiles
> > o muy comlicados para alguien que esta
> > empesando con POO.
> > Para probar la teoria a modo de ejercicio trate de repetir el ejemplo de
> un
> > articulo de una revista(no tenia codigo solo diagramas UML)
> >
> > Se crean modelan 2 objetos "Valvula" y "Sensor" yo los escribi asi:
> >
> > #Nombre Archivo: Valvula.py
> > class Valvula:
> >    def __init__(self):
> >        self.condicion = 0  #(0= cerrado, 1=abierto)
> >        self.caudal = 0     #caudal inicial
> >
> >    def Abrir(self):
> >        self.condicion = 1
> >
> >    def Cerrar(self):
> >        self.condicion = 0
> >
> >    def Caudal_Actual(sefl):
> >        self.caudal=sensor1.Caudal_Medido()
> >        return self.caudal
> >
> > ---------------------------------------
> > #Nombre Archivo: Sensor.py
> > class Sensor():
> >
> >    def __init__(self):
> >        self.caudal = 10
> >
> >    def Caudal_Medido(self):
> >        #codigo para medir
> >        return self.caudal #por ejemplo
> >
> > ----------------------------------------
> >
> > despues para probar los cargo en el IDLE.
> >
> > >>> import Valvula
> > >>> import Sensor
> > >>> valvula1 = Valvula()
> > >>> sensor1 = Sensor()
> > >>> valvula1.Caudal_Actual()
> >
> > Y me da un error de que sensor1 no esta defindo, bueno ya probe darle la
> > vuelta varias veces a esto.
> > La cuestion es que yo quiero preguntarle a la valvula que caudal esta
> > pasando, entonces ella le tiene que preguntar al sensor que caudal esta
> > pasando
> > y alli esta el meollo de la cuestion como hacer que valvula le tire un
> > mensajillo al sensor
> >
> > "Querido Sensor:
> >    Como estas? y la familia como anda? los sensorcitos ya estan grandes
> > seguro, y si.. los años pasan.
> >    Pero bueno, el motivo por el cual te escribo es para preguntarte que
> > caudal estas midiendo ahora mismo?
> >
> >    Saludos y abrazos
> >    siempre tuya Valvula"
> >
> > bueno algo asi. Se entiende lo que no entiendo?
> > Gracias a todos por tan solo leer mi msg.
> > _______________________________________________
> > Lista de correo Python-es
> > http://listas.aditel.org/listinfo/python-es
> > FAQ: http://listas.aditel.org/faqpyes
> >
>
>
>
> --
> _______________________________________
> Eduardo Andrés Matus Coquelet
> Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales
> Santiago, Chile.
> _______________________________________
>
> Celular: (07) 77113825
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es