#Patron Factory Method
class Vehiculo(object):
num_ruedas = 0
tipo_vehiculo = None
def __init__(self, nruedas):
self.num_ruedas = nruedas
def getNumRuedas(self):
return self.num_ruedas
def getTipoVehiculo(self):
return tipo_vehiculo
class Automovil(Vehiculo):
def getTipoVehiculo(self):
return "Automovil"
def setTipoMotor(tMotor):
self.tipo_motor = tMotor
class Motocicleta(Vehiculo):
def getTipoVehiculo(self):
return "Motocicleta"
def setCilindrada(nCilindrada):
self.num_cilindrada = nCilindrada
class FactoriaVehiculo(object):
def getVehiculo(self, nruedas):
if nruedas == 4:
return FactoriaAutomovil().getVehiculo()
else:
return FactoriaMotocicleta().getVehiculo()
class FactoriaAutomovil(FactoriaVehiculo):
def getVehiculo(self):
return Automovil(4)
class FactoriaMotocicleta(FactoriaVehiculo):
def getVehiculo(self):
return Motocicleta(2)
f = FactoriaVehiculo()
v = f.getVehiculo(2)
print v.getTipoVehiculo()
print v.getNumRuedas()
A continuación, enlazo un vídeo que he encontrado sobre este patrón del mismo autor que los anteriores.
No hay comentarios:
Publicar un comentario