Comunidad de diseño web y desarrollo en internet online

Incluir as3 en un archivo fla.

Citar            
MensajeEscrito el 11 Feb 2013 03:27 pm
Hola ¿qué tal?
Estoy aprendiendo as3 y me dicen que hay cuatro maneras de incluir as3 en un archivo, que son:

- En la línea de tiempo.
- En un archivo .as externo.
- En un documento de clase.
- Vinculando AS a un símbolo de la biblioteca.

Pero lo que no me aclaran ni me explican es cuándo usar cada uno de estos casos.

¿cuándo se puede usar cada uno de estos casos?

Gracias.

Por estudiantedeflash

73 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Feb 2013 04:49 pm
BuenAS:

Si estás empezando... de los dos primeros OLVIDATE. Yo nunca los he utilizado y no me he muerto ;)

El 4º sirve para añadir código a un símbolo de la biblioteca. Cuando exportas para ActionScript un símbolo, por defecto extiende a MovieClip (Sprite). pero puedes hacer que extienda a una clase tuya. Es una forma rápida de asignar código a un símbolo.

Y te queda trabajar con la clase documento, la tercera opción y la que a mí más me convence.

La clase documento es la clase principal de tu aplicación y NO TIENE POR QUÉ ser la clase que contenga todo el código. Divide tu aplicación en clases, dando a cada una de ellas una determinada responsabilidad. Cuidado con esto, que cuando se empieza es muy fácil caer en el tópico del Señor de los Anillos (o de las clases): una clase 'gigante' que los domine a todos :)

Un saludo.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 11 Feb 2013 06:31 pm
Muchas gracias Lukanicos.

:)

Pero, ¿por qué tengo (o es necesario) crear clases para cada cosa?

Es que he visto que en muchos ejemplos se utiliza la linea de tiempo y no entiendo tu razonamiento y si te viene bien, me gustaría que me lo aclararas.

Gracias de nuevo.

Por estudiantedeflash

73 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Feb 2013 08:35 pm
BuenAS:

Imagina que quieres la típica aplicación con un menú de las distintas secciones de un site (Home, Gallery, contact...). Mi enfoque sería crear una clase para cada una de ellas, el menú, la galería de imagenes, la recopilación de datos de contacto... y en la clase documento (la clase principal de la aplicación) las instancio y las añado al escenario de la app.

Otro enfoque sería colocar todo ese código en el frame 1 de la línea de tiempo.

Los dos enfoques te van a dar el mismo resultado, pero en el segundo caso acabas teniendo lo que llamaba antes código El Señor de los Anillos: uno para dominarlos a todos (este chiste no es mio, si googleas un poco seguro que lo encuentras). O sea un código de cientos de líneas que es bastante complicado de depurar y mantener.

Por otro lado, las galerías de imágenes, los menús... suelen tener una funcionalidad muy parecida y solo cambian los skins (el aspecto de los botones, los fondos...) y si los tienes en clases es muy fácil reutilizarlos de una aplicación en otra, sólo cambiando dichos skins. Pero si esto lo tienes todo junto en la línea de tiempo, tienes que andar buscando qué codigo corresponde a qué parte de la aplicación y haciendo copy&paste (código que se te olvida, código que se duplica, variables que se llaman igual, etc.)

Un saludo.
P.D.:Por cierto, cuando compilas una app con código en la línea de tiempo, el compilador antes crea unas clases donde coloca dicho código (esto es transparente para tí) con el método addFrameScript() de MovieClip. Es un método no documentado, por lo que no lo busques en la ayuda :)

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 11 Feb 2013 09:22 pm
¡Caramba! Ya decía yo que tu nick me sonaba. Y es que he leido algunos consejos tuyos sobre libros en AS3 en otro lado.

Ya, ahora entiendo lo que me quieres decir: que lo haga reusable para volverlo a utilizar si me hace falta.

Muchas gracias, Lukanicos.

Gracias por tu tiempo y la rapidez con la que has resuelto mis dudas.

:)

:)

Por estudiantedeflash

73 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.