[Php-objetos] PHPPOO - Ejercicio 2-1

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Lun Feb 16 23:58:48 ART 2009


Hola Mario,

El lun, 16-02-2009 a las 23:43 -0200, Mario Gomez Cassou escribió:
> (viene del mensaje del ejercicio 1-1)
> si tenemos que hacer clases para autos y camionetas, 2x4 y 4x4 no le veo
> por donde, desde el punto de vista de modelar la realidad, no hay
> diferencia entre autos y camionetas, son diferencias de atributos.
> De hecho 2x4 es un atributo que no implica necesariamente mas o menos
> metodos. Una 4x4 o un jeep con doble tracción estan buenos para andar
> por la playa y un Porsche no, y el Porsche tiene tracción en las cuatro
> ruedas. Un boogie no y esta bueno para andar por la arena.
> La ecosport la venden como una camioneta y es un fiesta con otra
> carroceria.
> En definitiva yo haría una sola clase, pero obviamente no es eso lo que
> se espera que hagamos

	Bueno, como siempre para un ejercicio, es escueto porque si no las
cosas quedan larguísimas.
	Sin embargo para la abstracción, también podríamos afirmar todo lo
contrario a lo que vos decís: no tienen atributos en común, porque las
carrocerías serán en general distintas, las transmisiones también, y ni
hablar de las ruedas. En cambio tienen comportamientos bien
diferenciados: unos pueden poner la doble tracción y otros no, unos
responden al mensaje "desencajarse" y los otros no pueden, etc.
	Por lo pronto, el asunto es que todo sistema es una abstracción de la
realidad. Para este ejercicio en particular, la parte de la realidad que
se quiere modelar es que hay autos y camionetas, y que los dos pueden
ser 2x4 o 4x4.	
	Cómo se resuelve el problema?

> Otro punto de la segunda clase: me puse a hacer el diagrama UML con Dia:
> me encantó las herramientas que tiene, los dibujos y líneas que se
> pueden hacer en dos patadas, y me trabé en cambiar el tamaño a los
> dibujos de clases: cuando los seleccionas te muestran unos cuadraditos
> donde irian los puntos para modificar la figura, pero no se pueden
> arrastrar. En la ayuda, en "cambiar tamaño" dice que hay que usar los
> puntos verdes y naranjas con los que jugue con las otras figuras, pero
> en clases no estan. Tampoco pude desde propiedades
> No es tan importante pero me llamó la atencion.

	Efectivamente, las clases no cambian de tamaño. Toman el tamaño solas
según los atributos y métodos que les definas en las "propiedades".
	Tiene sentido, porque una clase con más comportamiento va a ser "más
grande" que otra con menos.
	La ayuda tampoco está mal, ya que hay otros elementos que sí hacen
esto.

> El apunte que pasaste esta bueno. Al final te venden un programa!
> Yo no me acordaba que habias pasado el dato de Dia y me busque uno
> gratis para windogs: cuando lo instalé me avisaron que disfrutara de los
> 7 dias gratis que tenia, ni lo abri

	Uno muy bueno, gratuito y GPL multiplataforma es el ArgoUML.
	Pero para usarlo hay que saber un poco más de UML primero...

> Un abrazo

	=mente!
-- 
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key



Más información sobre la lista de distribución Php-objetos