Es evidente que la discusi�n inicial ( sobre los beneficios de la OOP ) ha derivado a otra discusi�n distinta ( sobre un OOD apropiado ).
En ese marco, y sin �nimo de seguir machacando la discusi�n, creo que Joseba no est� planteando el problema desde un punto de vista apropiado. No se trata de separar vista y modelo ( lo cual, como todo el que haya le�do alg�n libro de OOP un poco avanzado sabe ), porque en este caso no hay una vista y un modelo. De lo que se trata es de decidir d�nde deben residir las responsabilidades del comportamiento de una entidad con representaci�n gr�fica. Por lo tanto, aunque parece que por fin estamos de acuerdo en no implementar ciertos comportamientos complejos en un movieclip, me temo que no lo estamos por los mismos motivos, y eso es algo que me interesa aclarar. La asignaci�n de responsabilidades es el punto clave, m�s complejo, y que requiere mayor grado de racionalidad, intuici�n, visi�n global de la arquitectura, y conocimiento de una serie de reglas b�sicas de todo desarrollo de un tama�o que sobrepase las media docena de clases. Gente con mucha m�s experiencia que cualquiera de nosotros ( no s�lo en a�os de profesi�n, sino en desarrollo de proyectos grandes-enormes-desmesurados ) hace tiempo que manejan una serie de normas a la hora de decidir qu� debe hacer cada clase. La fundamental, el sentido com�n, pero aparte de eso, los llamados patrones GRASP que son uno de los pilares, por ejemplo, del Proceso Unificado ( m�todo de desarrollo centrado en la arquitectura, iterativo e incremental, germen de algunas de las metodolog�as del XP ). Por resumir, los cuatro patrones GRASP principales son: bajo acoplamiento ( debe haber pocas dependencias entre clases, por lo que no es bueno, por ejemplo, que haya una herencia muy profunda ), alta cohesi�n ( cada clase debe realizar una labor �nica y perfectamente identificable, por lo que no es bueno, por ejemplo, que una clase haga demasiadas cosas ), controlador ( el flujo de eventos se asigna a clases espec�ficas, aunque no es bueno que tengan demasiadas responsabilidades ) y experto ( asignar la responsabilidad de realizar una acci�n a la clase que tiene todos los datos para hacerlo ). Aparte de eso cuatro patrones principales, hay otros, como el polimorfismo, la indirecci�n, las factor�as, y mi preferido: "nunca hables con extra�os". Por tanto, aunque la libertad del desarrollador a la hora de implementar las soluciones que su problema requiere est� fuera de toda duda, no nos conviene olvidar que existe una metodolog�a que nos da una serie de herramientas para llegar a implementar esas soluciones. Y que esas herramientas han sido fruto de los a�os de experiencia y del talento de muchos y muy buenos desarrolladores. Cesar Tardaguila [EMAIL PROTECTED] > -----Mensaje original----- > De: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] En nombre de Joseba Alonso > Enviado el: mi�rcoles, 08 de septiembre de 2004 20:57 > Para: [EMAIL PROTECTED] > Asunto: Re: [ASNativos] movieclips subclases > > Manu, Cesar... > > Como decia en un email anterior, anexo al que mencionais, la > explicacion era sobre las ventajas del uso del OOP sobre una > implementacion procedural en el marco de los movieclips. > Entendi mal la pregunta de Pedro. Los ejemplos estaban > pensados para que alguien entendiese dichas ventajas, no era > una vision composicion vs herencia vs agregacion. Tampoco > eran una exposicion especifica sobre los beneficios de la > herencia frente a otras relaciones entre objetos. Entendi que > no comprendia las ventajas de usar subclases en vez de > colocar el codigo en la linea de tiempo del movieclip (a trav�s de > funciones) y usar un codigo centralizado para la gestion de > todo (1000 lineas de codigo en la linea de tiempo de _root). > > Efectivamente la implementacion de tal sistema pasaria por > separar el modelo de la vista, como cualquiera que sepa OOP > podria deducir. Aunque yo personalmente seguiria usando una > subclase de movieclip para los marcianos, que controlase su > apariencia grafica y su comportamiento como elemento grafico, > que hacer una composicion con wrappers de metodos de MC. > Logicamente la IA es el modelo, que iria fuera de esa > subclase, entre otras cosas. Pero esto ya es una opinion > personal, algo que ya discutimos acaloradamente hace algun > tiempo. No veo el sentido de volver a discutirlo de nuevo. > > un saludo > > Joseba Alonso > www.sidedev.net > www.5dms.com > > > ---------------------------------- > Lista ASNativos:[EMAIL PROTECTED] > http://www.5dms.com/listas > ---------------------------------- > ---------------------------------- Lista ASNativos:[EMAIL PROTECTED] http://www.5dms.com/listas ----------------------------------

