En mi estructura de classPath separo en dos grandes grupos: as y com.

Utilizo com.* (regla universal) para designar las clases espec�ficas de
proyectos o productos espec�ficos y as.* para clases no espec�ficas y
que pueden reutilizarse en la mayor�a del resto de proyectos. En
ocasiones especiales y clases "de autor" tambi�n conviene a�adir estas
clases a com.* para evitar cualquier problema de autor�a
(com.robertpenner.*, por ejemplo) en un futuro.

Las subdivisiones dentro de esos dos grupos son cuesti�n de cada uno.
Mientras yo tengo en as.* subcarpetas como as.errors y as.if
--excepciones e interfaces-- Xavi a�ade otro tipo de subdivisiones como
dataTypes y system. A veces es bueno que entre gente que pueda
"traficar" con clases se mantenga la misma estructura a f�n de que no
existan problemas con el import y las relaciones entre clases. 

Cuanto m�s tiempo pases del classPath, peor ser� luego el orden dentro
de las clases y m�s co�azo ser� el mantenimiento de las clases. Quiz�s
podr�amos pensar entre todos un est�ndar de classPath para, m�s
adelante, poder intercambiarnos clases m�s f�cilmente.

A la hora de trabajar con el classPath tan s�lo necesitas uno (definido
en las preferencias del mismo flash) que mantiene todas las clases. De
esta forma, siempre tendr�s todas las clases anteriores disponibles para
un nuevo proyecto.

Puede parecer un poco ca�tico al principio pero al final merece la pena
:)

M.


-----Mensaje original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
En nombre de Carlos Terradillos Guti�rrez
Enviado el: viernes, 13 de febrero de 2004 13:00
Para: [EMAIL PROTECTED]
Asunto: RE: [ASNativos] POO y orden, orden, orden... // antes: Acceso a
miembros est�ticos desde otra clase.


Bueno, me he adelantado, dec�a que funcionaba porque no daba error pero
funcionar, no funciona. Incluso con el import en su lugar correcto. Ya
ver�.

Me tiene intrigado eso del classPath que ya habi�is comentado Xavi y t�.
Viene a ser como una estructura de directorios en los que se organizan
las clases. Me imagino que el nombre de cada clase debe incluir su ruta.
Pero, siendo las clases te�ricamente reutilizables qu� haces �copias el
classpath a cada nuevo directorio de proyecto, se centraliza de alg�n
modo?

Estoy m�s confuso que la leche con esto de la poo. No s� como organizar
correctamente todo el tinglado.

En principio pensaba que lo mejor era crear una clase para cada mc (o lo
que sea) y centralizar la composici�n del interactivo en el fla. El
problema es que las clases se me hacen grandes y desde luego nada
reutilizables. Si las hago livianas luego tengo que ir sumando clases y
finalmente utilizarlas en el fla. Supongo que es lo suyo pero el fla
siempre tiene una buena porci�n de c�digo.

Necesitar�a una introducci�n sobre este tema �c�mo plantear proyectos
flash con poo? La pregunta del mill�n me temo.

�D�nde puedo encontrar informaci�n sobre esto?

Saludos y gracias por todo.



> -----Mensaje original-----
> De: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] En nombre de Manuel de 
> la Higuera
> Enviado el: viernes, 13 de febrero de 2004 12:05
> Para: [EMAIL PROTECTED]
> Asunto: RE: [ASNativos] Acceso a miembros est�ticos desde otra clase.
> 
> 
> Me extra�a que haga eso sin importar la clase de ninguna forma. Si 
> tienes la clase est�tica importada en el fla imagino que no debe darte

> problemas --por la forma que tiene flash de estructurar las clases as2

> en el swf-- pero me sorprende que funcione sin hacer referencia a 
> ella.
> 
> Suelo utilizar exclusivamente las clases del classPath, �es
> una ventaja
> de las clases fuera del classPath?
> 
> 
> -----Mensaje original-----
> De: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]
> En nombre de Carlos Terradillos Guti�rrez
> Enviado el: viernes, 13 de febrero de 2004 12:01
> Para: [EMAIL PROTECTED]
> Asunto: RE: [ASNativos] Acceso a miembros est�ticos desde otra clase.
> 
> 
> Puffff!!!
> 
> Resulta que funciona si le quito el import...
> 
> class Prueba {
>       // import Elastic;
>       var x:Number;
>       function Mover():Void{
>               x = Elastic.easeInOut(5,5,5,5);
>       };
> }
> 
> > -----Mensaje original-----
> > De: [EMAIL PROTECTED] 
> > [mailto:[EMAIL PROTECTED] En nombre de Carlos 
> > Terradillos Guti�rrez Enviado el: viernes, 13 de febrero de 2004 
> > 11:42
> > Para: [EMAIL PROTECTED]
> > Asunto: RE: [ASNativos] Acceso a miembros est�ticos desde
> otra clase.
> > 
> > 
> > Se me ocurren un mont�n de preguntas... pero voy a centrarme en el 
> > tema.
> > 
> > Tengo una estructura de directorios tan simple como esto:
> > 
> > Fla+clases
> >     |
> >     |
> >     Directorio_Clases
> >             |
> >             |
> >             clase1+clase2+...
> > 
> > Las clases de este directorio son las de easing de R.
> Penner. Lo �nico
> 
> > que les he modificado era su nombre-ruta de tal modo que
> solo queda su
> > nombre: p.e. Elastic.
> > 
> > Todos los miembros de las clases de easing son est�ticos.
> > 
> > La ruta est� definida en el fla.
> > 
> > Bien, como dec�a si desde el fla llamo directamente a un
> m�todo de una
> 
> > clase como Elastic, funciona sin problemas:
> > 
> >     x = Elastic.easeInOut(...);
> > 
> > Ahora bien, si desde una de las clases de nivel fla llamo a
> esa misma
> > clase con Directorio_Clases.clase1.metodo1() pu�s me da el
> error ese
> > de que las clases no coinciden (la pedida y la encontrada).
> > 
> > Me imagino que es porque en el nombre de la clase a importar debo 
> > poner la ruta as�:
> > 
> >     Directorio_Clase.clase1 y no s�lo clase1
> > 
> > Entonces s� que parece reconocer la ruta y la clase pero...pu�s no 
> > pod�a ser tan f�cil!!!
> > 
> > Ahora el error es otro:
> > 
> > **Error** E:\proyecto\clase.as: L�nea 9: No se admiten declaraciones

> > de importaci�n en definiciones de clase o interfaz.
> >             import Elastic;
> > 
> > Esto ya no tiene que ver con las rutas. De hecho simplifico
> el tema y
> > coloco todas las clases en la misma ruta y nombre �nicamente de la
> > clase. El error es el mismo.
> > 
> > Es muy fuerte esto de que "No se admiten declaraciones de 
> > importaci�n en definiciones de clase o interfaz." �no?
> > 
> > �El c�digo?
> > 
> > class Prueba {
> >     import Elastic;
> >     var x:Number;
> >     function Mover():Void{
> >             x = Elastic.easeInOut(5,5,5,5);
> >     }
> > }
> > 
> >                            
> > 
> > > -----Mensaje original-----
> > > De: [EMAIL PROTECTED] 
> > > [mailto:[EMAIL PROTECTED] En nombre de Manuel de la 
> > > Higuera Enviado el: viernes, 13 de febrero de 2004 0:40
> > > Para: [EMAIL PROTECTED]
> > > Asunto: RE: [ASNativos] Acceso a miembros est�ticos desde 
> > otra clase.
> > > 
> > > 
> > > La composici�n de clases es crear una clase nueva a partir de 
> > > otras que al principio pueden resultar inconexas.
> > > 
> > > Muchas veces puede ser interesante tener esa clase hecha en AS2 
> > > (por ej: coche = ruedas + volante + ...) pero la mayor�a de las 
> > > veces la composici�n pasa a hacerse, por comodidad supongo,
> > directamente en el
> > > mismo fla.
> > > 
> > > Si desde el fla no te da problema y desde otra clase s�, es 
> > > posible que se trate de un tema de rutas. Si tienes los archivos 
> > > .as en el classPath
> > > no deber�a saltar ning�n error con el c�digo anterior, 
> pero creo que
> > > puede surgir alg�n problema cuando tienes uno de ellos en el
> > > classPath y
> > > el otro en un directorio dependiente del fla.
> > > 
> > > Env�a el c�digo si quieres y le echamos un ojo entre todos :)
> > > 
> > > M.
> > > 
> > > 
> > > 
> > > -----Mensaje original-----
> > > De: [EMAIL PROTECTED] 
> > > [mailto:[EMAIL PROTECTED]
> > > En nombre de Carlos Terradillos Guti�rrez
> > > Enviado el: jueves, 12 de febrero de 2004 23:10
> > > Para: [EMAIL PROTECTED]
> > > Asunto: RE: [ASNativos] Acceso a miembros est�ticos desde
> > otra clase.
> > > 
> > > 
> > > Bien, las relaciones entre clases desde las clases.
> > > La composici�n de clases �qu� es?
> > > 
> > > Por otro lado, mi caso concreto es la llamada a un m�todo
> > est�tico de
> > > una determinada clase. Si lo hago desde el fla no hay
> > problema, si lo
> > > hago desde otra clase s�: es cuando me da ese error.
> > > 
> > > Tendr� que revisar, o mejor aislar el problema  a ver si
> > descubro qu�
> > > pasa.
> > > 
> > > Saludos.
> > > 
> > > :��: croma2 :������������������������:
> > > :    Carlos Terradillos Guti�rrez    :
> > > ::::::::::::::::::::::::::::::::::::::
> > > 
> > > > 
> > > > El import es independiente para cada clase en AS2 y tambi�n del
> > > > IDE. Las relaciones entre clases en AS2 --no as� la 
> composici�n de
> > > > clases-- deben
> > > > estar hechas a partir del c�digo en AS2 y no a expensas
> de un fla.
> > > > 
> > > > Si a pesar de hacer funcionar los .as independientemente
> > > (el check de
> > > > sintaxis eval�a si es correcto o no, independientemente
> > de d�nde y
> > > > c�mo tengas el .fla) el IDE sigue grit�ndote, quiz�s
> s�lo sea un
> > > > problema de rutas o de nombres.
> > > > 
> > > > O est� teniendo un comportamiento extra�o en tu situaci�n
> > > concreta...
> > > > �C�mo vinculas las clases en el fla?
> > > > 
> > > > M.
> > > > 
> > > > 
> > > > 
> > > > 
> > > > 
> > > > -----Mensaje original-----
> > > > De: [EMAIL PROTECTED]
> > > > [mailto:[EMAIL PROTECTED]
> > > > En nombre de Carlos Terradillos Guti�rrez
> > > > Enviado el: jueves, 12 de febrero de 2004 21:14
> > > > Para: [EMAIL PROTECTED]
> > > > Asunto: RE: [ASNativos] Acceso a miembros est�ticos desde
> > > otra clase.
> > > > 
> > > > 
> > > > Me responde con que:
> > > > 
> > > > La clase que se est� compilando, 'Clase', no coincide con
> > > la clase que
> > > 
> > > > se import�, 'ruta.Clase'...
> > > > 
> > > > Esa misma ruta la tengo definida en el fla.
> > > > 
> > > > �?
> > > > 
> > > > > -----Mensaje original-----
> > > > > De: [EMAIL PROTECTED] 
> > > > > [mailto:[EMAIL PROTECTED] En nombre de
> > Manuel de la
> > > > > Higuera Enviado el: jueves, 12 de febrero de 2004 20:16
> > > > > Para: [EMAIL PROTECTED]
> > > > > Asunto: RE: [ASNativos] Acceso a miembros est�ticos desde
> > > > otra clase.
> > > > > 
> > > > > 
> > > > > Puedes acceder a un miembro est�tico de una clase
> > > > importando la clase
> > > > > est�tica desde la clase "normal" de forma:
> > > > > 
> > > > > import classpath.estatica.Clase
> > > > > 
> > > > > Y para llamar al m�todo/propiedad s�lo necesitas:
> > > > > 
> > > > > Clase.metodo()
> > > > > Clase.propiedad
> > > > > 
> > > > > M.
> > > > > 
> > > > > 
> > > > > -----Mensaje original-----
> > > > > De: [EMAIL PROTECTED] 
> > > > > [mailto:[EMAIL PROTECTED]
> > > > > En nombre de Carlos
> > > > > Terradillos Guti�rrez
> > > > > Enviado el: jueves, 12 de febrero de 2004 20:13
> > > > > Para: ASNativos
> > > > > Asunto: [ASNativos] Acceso a miembros est�ticos desde
> > otra clase.
> > > > > 
> > > > > 
> > > > > ... En AS2:
> > > > > 
> > > > > El tema es �c�mo accedo a un miembro est�tico de una clase
> > > > desde otra
> > > > > clase (que adem�s est� en otro directorio)?
> > > > > 
> > > > > Saludos.
> > > > > 

<!-------------------------------
Lista ASNativos:
subscripciones/desubscripciones http://www.sidedev.net/asnativos
-------------------------------->

<!-------------------------------
Lista ASNativos:
subscripciones/desubscripciones
http://www.sidedev.net/asnativos
-------------------------------->

Responder a