martes, 1 de marzo de 2011

10. la Clase Math

Hola chicos, ya estamos aquí después de algún tiempo sin hacer un post, buenoel orden que seguiré es este blog, es un poco desarrollar los temas según el orden de las clases que dicto en MGP - Perú de San isidro.

A ver este post es por decirlo de alguna forma muy sencillo de explicar y obviamente muy facil de entenderlo también.

La clase Math de flash contiene métodos y constantes que representan funciones matemáticas.

Cabe resaltar tambien que todas las propiedades y métodos de la clase Math son estáticos y deben llamarse utilizando la siguiente sintáxis

Math.método(parámetro);

ahora pasaremos a ver algunos métodos que utilizaremos en este post

Math.random();
Math.floor();
Math.round();


Math.raondom()
Entendamos que Random se interpreta como (Al azar), lo que hace es simplemente devolvernos un valor un número n (Al azar)

donde 0 <= n <>

Ejemplo:

//declaramos una variable tipo Number
var miNum:Number;

//le damos un valor al Azar a nuestra variable
miNum = Math.random() * 10

//trazamos la variable
trace(miNum)

//en la ventana de salida tendremos:
2.5688149826601148 (por ejemplo)

De esta forma es como obtenemos un numero al Azar.

Math.floor();

este método tiene como finalidad redondear un numero decimal hacia abajo, su utulizacion es la siguiente

Math.floor(parametros)

si lanzamos Math.floor(miNum) //utilizando la misma variable de arriba

//en la ventana de salida tendremos:
2 (por ejemplo)

Como verán nos arroja un valor de tipo int.

por ultimo :

Math.round();

Al igual que la anterior se utiliza para redondear sin embargo, lo que hace es analizar el valor y hace el redondeo del numero hacia el valor mas cercano ejemplo

Si utilizamos la misma variable miNum la cual equivale a 2.5688149826601148 , y la usamos como parametro para round lo escribimos de la siguiente manera

Math.round(miNum)
//en la ventana de salida tendremos:
3 (por ejemplo)

en breve subiremos una formula para obtener valor al azar dentro de un rango de numeros.

martes, 6 de octubre de 2009

9. FUNCIONES

Que tal chicos y chicas, como estan espero que bien, ante todo las disculpas del caso por tenerlos un poquito abandonados pero en fin luego de uno que otro concierto y un paseo por Chosica el pasado domingo he vuelto para ver un poco este tema de funciones.

Aver el tema de las funciones es por decirlo asi un poco extendido, sin embargo todo tienen algo básico, todo tiene su lado inicial, es el que les voy a explicar en este capitulo, lo importante es que entiendan como exactamente funcionan, entiendan este capitulo a la perfección y todo lo demas se les hara mucho mas facil de entender, y conforme vayamos avanando iremos viendo en otros capitulos como se expande el tema de la funciones.

¿Que es una función? (Function)
Una funcion es un conjunto de ordenes un conjunto de comandos que se van a ejecutar cuando el programador lo ordene, siempre estan listas a ser llamadas, en cualquier parte de nuestro código.

Vayamos a la practica

si quisieramos sumar un par de números, tendrimos

//Primero que declarar las variables que serian 3
var a:int = 3;
var b:int = 5;
var total:int;

//ahora realizamos nuestra operación
total = a + b;

//Ahora imprimimos nuestro resultado
trace(total);

y listo eso seria todo siempre y cuando solo tenemos que sumar dos numeros

ahora usando funciones todo esto seria de la siguiente forma:

//Primero utilizamos la palabra clave o el comando Function seguido del nombre de nuestra funcion

function sumar(){
total = 3 + 5
//ahora imprimimos el resultado
trace(total)
}

teniendo esa funcion definida solo tenemos que poner en nuestro codigo el nombre de la funcion y listo se va a ejecutar

//asi llamamos a una funcion
sumar();

//listo siempre que tengamos que usar esa funcion ya no tenemos que escribir tanto codigo
solo escribiremos

sumar();

y listo.

Ahora Ud diran que es super util si es que siempre quisieramos sumar 3 + 5 y si queremos sumar otros numeros tengo que hacer una funcion para cada suma que quiero hacer

la respuesta es no.

A toda funcion se le puede enviar parametros siempre y cuando nuestra funcion la requiera y lo va a requerrir segun como la diseñemos

veamos

hagamos la misma funcion pero en vez que sume dos numeros sumaremos dos variables las cuales se enviaran como parametros cada vez que se llame a la funcion


var total:int;
// llamos a nuestra funcion sumar con dos parametros que seran a y b
// siempre se separan por comas y ademas tenemos que decir que tipo de variables son
function sumar(a:int,b:int){
//ahora sumamos los dos parametros
total = a + b;
//luego imprimimos el total
trace(total)
}

ahora cada vez que llamemos la funcion tenemos que enviarle los parametros que esta requiere

sumar(5,5);

aqui va imprimir 10

si le decimos
sumar(50,12)

aqui imprimira 62

Facil no ???

lunes, 28 de septiembre de 2009

8. EVENTOS

Hola chicos que tal, ahora si vamos aver Eventos

por que son tan interesante los eventos, por que se podria decir que en ellos gira todo, al menos esa es mi percepción, si pues por que casi todo se rige por botones, ¿verdad? y los botones se manejan a travez de eventos.

Aver imaginemos que nosotros somos botones, que cada uno de Uds. son un Boton, estamos ahi parados nada mas con las orejas bien paradas listos a escuchar lo que algun usuario nos dira, y estamos programados para escuchar solo un grupo de cosas y para hacer una funcion específica ni bien escuches como se comunica el usuario con nosotros, ahora el usuario se puede comunicar con nosotros a traves, del mouse y del teclado báscicamente.

Si el usuario no hace un click, nosotros como boton lo escuchamos y hacemos la funcion de sonreir por asi decirlo

entonces nosotros somos el boton, nuestros oidos son un listener y segun nos programen escucharemos solo un grupo de eventos que pueden ser solo de Mouse, luego escuchamos exactamente que Evento fue (ejemplo: click , dobleClick, pasar el mouse por encima, el mouse fuera de nosotros, etc) una vez que pase eso sonreimos, y listo eso es todo.

boton.addEventListener(MouseEvent.MOUSE_DOWN, sonreir)

boton = Nosotros
addEventListener = nuestras orejas (Osea un escuchador de eventos)
MouseEvent = La clase de eventos que escucharemos (En este caso Eventos del Mouse)
MOUSE_DOWN = El tipo de evento (Cuando ahagn un click con el Mouse)
sonreir = Este es el nombre de la function que realizaremos cuando el boton escuche lo que tiene que escuchar. (El nombre de la funcion puede ser cualquiera, se recomienda que el nombre este relacionado con la accion que realizara el objeto en nuestra pelicula, ejemplo si se va a mover se puede llamar Mover, si empieza a arrastrarse se puede llamar initDrag, y asi sustantivamente como dice el chavo , jejeje)


Vamos a ver un ejemplo practico de como usar un evento para realizar por ejemplo una animación super sencilla.

Uno de los eventos mas usados es el ENTER_FRAME No es un evento de Mouse, mas bien es un evento de linea de tiempo, es algo asi como cuando entre a un Frame ;)

veamos.

Igual que el ejemplo anterior tenemos una Escena de 400 x 300 px

y tenemos un MovieClip rectangular de 100 x 40 px centrado en el escenario el cual esta con nombre de instancia miObjeto

entonces tenemos

//le agregamos un escuchador de eventos a nuestro clip de pelicula de tipo Enter_Frame
//y que ejecute la function mover
miObjeto.addEventListener(Event.ENTER_FRAME, mover)

//ahora hacemos nuestra funcción
function mover (event:Event) {
//le decimos que incremente su valor en su eje X de nuestro MovieCLip
miObjeto.x += 3

// ahora la condicional
if (miObjeto.x > 450) {
miObjeto.x = -150
}
}

Listo, asi tendremos nuestra animacion y no necesitaremos como el ejemplo anterior de tener otro frame para que salga y entre del primer Frame, ya que este evento lo que hace es que siempre entre en este Frame y se ejecute infinitamente la funcion mover.

Acontinuación Veremos los Grupos de Eventos que podemos utilizar conforme vayamos avanzando:

Entonces ahora tenemos disponible una nueva clase

flash
.events.MouseEvent


el cual brinda todos los eventos para el mouse los cuales son:
CLICK
DOUBLE_CLICK
MOUSE_DOWN
MOUSE_MOVE
MOUSE_OUT
MOUSE_OVER
MOUSE_UP
MOUSE_WHEEL
ROLL_OUT
ROLL_OVER


Para el caso del teclado ahora a traves de la clase

flash
.events.KeyboardEvent

se tienen disponibles dos tipos de eventos
KEY_DOWN
KEY_UP.

esos son los principales, poco a poco iremos viendo los demas, la idea es que entiendan bien como funciona y no llenarlos de listas de eventos cosas que si aprenden bien la base que es esta, luego los eventos que se necesiten en el camino, se pueden conseguir.



Lobito

7. Signos del Lenguaje

Bueno antes de empezar a explicar como se progaman los botones, como funcionan los escuchadores (listener) y como se usan los eventos, vamos a ver el tema de los Signos de programación, tales como los dos puntos(:) el punto y como (;) la coma(,) los parentesis (()) las llaves ({}) y los corchetes ([])

Punto y como (;)
Todas las sentencias de Action Script terminan siempre con un punto y coma (;), como se muestran en el siguiente ejemplo:

var miNumero:Number = 50;
miClip.alpha = miNumero;

Aunque no coloquen el punto y coma al final de una sentencia, el compilador de ActionScript dará por hecho que cada línea de código representa a una sentencia independiente; sin embargo es una buena practica de programación que siempre se coloque el punto y coma al finalizar una sentencia.

Nota: El uso del punto y coma para terminar una sentencia le permite colocar más de una sentencia en una misma línea, pero, al hacerlo, normalmente el código resulta más difícil de leer.

Otro lugar en el que se utiliza el punto y coma es en los bucles For. El punto y coma permite separar parámetros, como se muestra en el siguiente ejemplo.

var i:Number;
for (i=0; i < style="font-weight: bold; color: rgb(204, 102, 0);">Los dos puntos

Los dos puntos (:) se utilizan en el código para asignar tipos de datos a las variables. Para asignar un tipo de datos específico a un elemento, especifique el tipo con la palabra clave var y la sintaxis de signo de dos puntos posterior, como se muestra en el siguiente ejemplo:

var miNumero:int
function mover(obj:Movieclip, nombre:String) {
comandos......
}

Los parentesis ()

Al definir una función mediante ActionScript, los parámetros se colocan entre paréntesis [()], como se muestra en las siguientes líneas de código:

function miFuncion(miName:string, miEdad:Number, estado:Boolean):Void {
//El código se escribe aquí
}

Tambien se usan cuando se llama a una function para pasarle los parametros a la misma

miFunción("Julio", 32, True)

Ahora tambien se usan los parentesis para ordenar jerarquias para resolver operaciones matemáticas por ejemplo

var:Number resultado = (50 * 2) + 10;

Las llaves

Las llaves ({}) permiten agrupar eventos, definiciones de clases y funciones de ActionScript en bloques. La llave inicial se coloca en la misma línea que la declaración es to es lo recomendable por un tema de coherencias.

Nota: También puede colocar la llave inicial en la línea que sigue a la declaración. Las convenciones de codificación recomiendan colocar la llave inicial en la misma línea para lograr mayor coherencia. Para más información sobre llaves y convenciones del código.

Coloque llaves alrededor de las sentencias cuando formen parte de una estructura de control (como, por ejemplo, if..else o for), aunque contengan una sola sentencia. Esta práctica recomendada le ayuda a evitar errores en el código ActionScript cuando se olvida de añadir llaves al código. En el siguiente ejemplo se muestra código escrito con un formato insuficiente:

var numUsers:Number;
if (numUsers == 0)
trace("no users found.");

Aunque este código es válido, se considera que su formato es insuficiente porque las sentencias no aparecen entre llaves.

SUGERENCIA


Si hace clic en el botón Formato automático, se añadirán llaves a esta sentencia.

En este caso, si añade una segunda sentencia después de la sentencia
trace, la segunda sentencia se ejecutará independientemente de que la
variable numUsers sea igual a 0, lo que puede provocar
resultados inesperados. Por este motivo, añada llaves al código como se
muestra en el siguiente ejemplo:

var numUsers:Number;
if (numUsers == 0) {
trace("no users found");
}


Literales

Un literal es un valor que aparece directamente en el código. Los literales son valores constantes (que no cambian) contenidos en los documentos de Flash. Ejemplos de literales son true, false, 0, 1, 52 o incluso la cadena "foo".

Todos los ejemplos siguientes son literales:

17
"hello"
-3
9.4
null
undefined
true
false

Los literales también pueden agruparse para formar literales compuestos. Los literales de matrices se escriben entre corchetes ([]) y utilizan la coma (,) para separar los elementos de la matriz. Un literal de matriz puede utilizarse para inicializar una matriz. En los siguientes ejemplos se muestran dos matrices que se inicializan mediante literales de matriz. Puede utilizar la sentencia new y pasar el literal compuesto como parámetro al constructor de la clase Array, pero no puede asignar valores literales directamente al crear instancias de clases incorporadas en ActionScript.

// se utiliza una nueva sentencia
var myStrings:Array = new Array("alpha", "beta", "gamma");
var myNums:Array = new Array(1, 2, 3, 5, 8);

// asignar literal directamente
var myStrings:Array = ["alpha", "beta", "gamma"];
var myNums:Array = [1, 2, 3, 5, 8];

Los literales también se pueden utilizar para inicializar un objeto genérico. Un objeto genérico es una instancia de la clase Object. Los literales de objetos se escriben entre llaves ({}) y utilizan la coma (,) para separar las propiedades del objeto. Cada propiedad se declara mediante el signo de dos puntos (:), que separa el nombre de la propiedad del valor de la propiedad.

Puede crear un objeto genérico utilizando la sentencia new y pasar el literal de objeto como parámetro al constructor de la clase Object, o bien asignar el literal de objeto directamente a la instancia que está declarando. En el siguiente ejemplo se crea un nuevo objeto genérico y se inicializa el objeto con tres propiedades, propA, propB y propC establecidas con los valores 1, 2 y 3 respectivamente.

// se utiliza una nueva sentencia
var myObject:Object = new Object({propA:1, propB:2, propC:3});

// asignar literal directamente
var myObject:Object = {propA:1, propB:2, propC:3};

No debe confundir un literal de cadena con un objeto String. En el siguiente ejemplo, la primera línea de código crea el literal de cadena firstStr, mientras que la segunda línea de código crea el objeto String secondStr:

var firstStr:String = "foo"
var secondStr:String = new String("foo")
Utilice literales de cadena a no ser que necesite utilizar un objeto String específicamente para lograr un mejor rendimiento. Para más información sobre cadenas.

Esto solo tienen que estudiarlo y tenerlo siempre presente, y con formen vayamos practicando poco a poco nos iremos aconstumbrando a usar los signos de programación y asi lo veremos de forma mas natural.

Suerte.

Lobito

6. Bucles

Los bucles son aquellas funciones que se ejecutan una y otra vez siempre y cuando cumplan alguna condición

for

Pseuducodigo

for (valorInicialDeLaVariable, condición, modificiaciones) {

realizarAcciones();

}


en codigo Action script 3.0 quedaria de la siguiente manera


//primero declaramos la variabel i y le asignamos el valor 0

//luego decimos que ejecute este for hasta que i sea igual a 10

//y por ultimo le decimos al for que cada vez que se ejecute aumente el valor de i de uno en uno

for (var:int i= 0; i ==10; i++) {

trace("el valor de i es " + i) //esto imprimira el valor de i cada vez que entre lal for

}


while

Este bucle al contrario que el for, ni incrementa ni decrementa su indice.

mientras(condicion) {
hacer acciones();
}

while (i<25){ // Esto ejecuta el while mientras i sea menor a 25
i++; // aqui incrementamos el valor de i de uno en uno
trace(i); // aqui imprimimos el valor de i cada vez que entra el while
}


5. Estructuras condicionales

Estructuras condicionales

Permite que una pelicula cambie su comportamiento, según la condicion que le pongamos

//Decimos que si la condicion1 se cumple lleve el lector de Frame al medio

if (condicion1) {

gotoAndPlay(”medio”);

} else { // Si no que vuelva a empzar

gotoAndStop(”vueltaempezar”);

}

Ok veamos Nuestro primer ejemplo En Flash Con AS3

Recomendaciones:
Siempre deben saber cuanto mide exactamente su Escenario (stage)
y es recomendable tambien saber cuanto miden sus objetos en el escenario.

Ahora vamos A Flash AS3, modifiquemos el tamaño de nuestro escenario y pongamos 400 px por 300 px.

Vamos a crear en el escenario un MovieClip de 100 X 40 px., lo instanciamos con el nombre de miObjeto y lo centramos al escenario (control + K) (cuando creen el MovieClip, colocar el punto de registro en la esquina superior izqiuerda, esto ayudara a controlar mejor sabiendo donde se encuentra el punto de registro de nuestro movieClip)



Descargar Fla sin codigo //Lo recomendable es que Uds mismos hagan sus fla y sus codigo

ahora vamos a Jugar con la posición de nuestro moviClip en la cordenada x

Primero solo colocamos en el primer Frame de la capa AS el siguiente codigo

//el eje x de miObjeto ira incrementando de 10 en 10 px
//esto hara que mi Movie CLip se mueva
miObjeto.x += 10

nota: si no se han dado cuenta hay un frame mas que esta quedando vacio, lo que esto hace es que el flash lea el primer Frame y haga que avance 10 pixeles nuestro MC luego se va al frame 2 no hace nada, como no hay ningun stop(); entonces regresa al frame 1 y hace que nuestro MC avance 10 pixeles mas y luego al Frame 2 y asi un bucle infinito nunca para.

Ahora si solo lo dejamos ahi, nuestro MC, saldra del escenario y seguira avanzando y no lo veremos mas, :'( jejejejeje es ahora donde usamos una condicional para cambiar eso

veamos

nuestro escenario mide de ancho 300 px, lo recuerdan ? ok

entonces solo tenemos que hacer que cada vez que entre en el Frame 1 y avance nuestro MC pregunte si esta fuera del escenario osea si su posixión x es mayora a 300 px. que es el ancho de nuestro escenario. quedaria asi:

miObjeto.x += 10;

if (miObjeto.x >300) { // preguntamos si la posicion x de nuestr objeto es mayor a 300
miObjeto.x = 0; // entonces lo movemos a la posicion x = 0
}

Listo chicos nuestra primera animacion con codigo AS3

Sencillo verdad ;)

Nota Final:
Si ven que el objeto salta de una posicion a otra, pues simplemente hagamos algo, dejemos que vaya mas alla de los 300 px y que empiece antes de la posicion 0 y el codigo completo quedaria asi:

miObjeto.x += 10;

if (miObjeto.x >450) { // preguntamos si la posicion x de nuestr objeto es mayor a 300
miObjeto.x = -100; // entonces lo movemos a la posicion x = 0
}

ver ejemplo

como ven para colocar un Objeto antes de la posición 0 (cero) podemos usar numero en negativo.

Espero les haya servido.


Lobito

4. Estructuras de Control

Aver las estructuras de control, sirven para controlar la programación, es decir si no queremos que nuestro código se ejecute de manera correlativa o seguida, insertamos una estructura de control para hacer que haga o no haga algo segun alguna condición que necesitemos en el momento indicado.

Podemos decir que existen 3 estructuras de control o que se dividne en 3 grupos:

  1. Estructuras condicionales
  2. Bucles
  3. Funciones
Las estructuras de control, digamos que tienen dos caracteristicas importantes de para que sirven:

Una es para agrupar código. Engloba bloques de código. Y otra
para ordenar. Osea que controla el orden de ejecución.


continuara.....

3. OPERADORES

¿Que son los operadores?

Son símbolos o plabras clave que realizan operaciones sobre los valores.

El resultado de las operaciones se guardan en variables, salvo cuando las operaciones las usamos a modo expresiones en los bucles o estructuras condicionales.

Operadores Aritméticos

+ suma

+ resta

* multiplicación

/ división

% Módulo de una división


Operadores de asignación

El más común es el “=”. Pero hay varios mas como:

+=

-=

*=

/=

que tienen la misma funcionalidad que el ejemplo que vimos al principio de:

mix=mix+1;


es lo mismo que:

mix +=1;


Operadores de concatenación

Hablamos en plurar, pero el único operador global de concatenación es el símbolo “+“, aunque existen otros operadores para otros tipos mas concretos como “concat” para Array, que veremos mas adelante.

Operadores de comparación o condicionales

Sirven para comparar dos operadores y devuelven valor booleano: true o false.

== Devuelve True si son iguales

!= Devuelve True sin son distintos

> Devuelve True si el 1er valor es mayor que el segundo

<>

>= Devuelve true si el 1er operando es mayor o igual que el segundo

<= Devuelve true si el 1er operando es menor e igual que el segundo


Operadores lógicos.

Se usan en combinación de los operadores de comparación, en estructuras codicionales o bucles.

&& Devuelve true si las dos condiciones son true

if ( i>1 && i<8>

|| Devuelve true, si una de las condiciones son true

if (i>1 || i<8)>

! Convierte true en false, y viceversa

var siono:Boolean= new Boolean(false)

if (!siono) { … } // Si “Sino” es lo contrario de su valor… , si “sino” es verdadero…


Diccionario:
Boolean, Boleano

Es un operador, usado en lenguajes de programación que solo tiene dos valores, o es Verdadero o es Falso (True, False)

Ejemplo:

PseudoCodigo

Si ( Juan es Mayor que Pedro)
{
imprimir("Juan es Mayor que pedro")
}

Si no
{
imprimir("Juan no es mayor que Pedro")
}

Esta es un condicional y pregunta si Juan es Mayor que Pedro
Si devuelve un valor True osea verdadero imprime la primera cadena de texto

y si resulta que Juan no es Mayor que pedro entoces devuelve un valor Boleano False e imprimiria la segunda cadena de texto "Juan no es mayor que Pedro"

viernes, 25 de septiembre de 2009

2. VARIABLES

Hola chicos, como estan espero que bien, bueno vamos dando vuelta a la página, a retomar esto desde un principio.

¿Qué es una variable?

Una variable es una Unidad de almacenamiento de información, en ella podemos guardar información cuando queramos para luego poder ser usadas para realizar nuestra animación o nuestra aplicación.

Ejempo:

//declaramos la variable
var cantidad:int;

//le asignamos un valor a la variable
cantidad = 10;

Explicación:

siermpre para declarar una variable tenemos que empezar con la palabra clave var luego el nombre de nuestra variable y acontinuación tenemos que decirle al AS3 que tipo de variable es la que estamos declarando para esto usamos los dos puntos (:) los dos puntos es como decir "como".

por ejemplo en los creditos de una pelicula diria

Drew Barrymore como Lucy, esto se escribiria Drew Barrymore:Lucy

entonces si queremos tener una variable tipo cadena de texto diriamos

miVariable como String --> miVariable:String;

ahora para los nombres de las variables tenemos varias sencillas normas:

  1. Usaremos numeros y letras del alfabeto ingles.
  2. No puede empezar por un numero.
  3. Podemos usar “_” y $, pero no es recomendable.
  4. El lenguaje distingue entre mayúsculas y minísculas. Yo recomiendo usar siempre las minúsculas, para evitar malentendidos, o lo que personalmente acostumbro cuando el nombre de mi variable consta de dos palabras las separo poniendo todo en minuscula pero la primera letra de la siguiente palabra en Mayuscula por ejemplo si quiero que mi variable se llame mi combo lo pondria asi miCombo.
  5. Al final de toda instrucción que finalice, colocar una coma.
  6. Para asignarle un valor a una variable se usa "="

Hay otras normas que no son obligatorias, pero si muy recomendadas:

  • Usar variables descriptivas. Si hacemos una aplicación compleja, si no lo hacemos, acabaremos teniendo un galimatías(*), que el día de mañana, en caso de tener que hacer modificaciones, nos llevará irremediablemente a la pérdida de tiempo.

Tipos de datos

En actionscript se asigna el tipo de datos en la definición de variables.

var indetificador:Tipo;

Tipos de datos primitivas en ActionScript.

Son aquellas que define el propio lenguaje de programación:

  • String: un valor de texto como, por ejemplo, un nombre o el texto de un capítulo de un libro
  • Numeric: ActionScript 3.0 incluye tres tipos de datos específicos para datos numéricos:
    Number: cualquier valor numérico, incluidos los valores fraccionarios o no fraccionarios
    int: un entero (un número no fraccionario)
    uint: un entero sin signo, es decir, que no puede ser negativo
  • Boolean: un valor true (verdadero) o false (falso), por ejemplo, si un conmutador está activado o si dos valores son iguales



Abreviando:


//declaramos nuestra variable Tipo entero
var miValor:int;

//ahora le asignamos un valor a nuestra variable
miValor = 10;

ahora todo esto lo podemos abreviar en una sola linea, al momento de declarar la variable le podemos asignar el valor

De esta manera

var miValor:int = 10;

Mientras menos lineas de codigo tengamos sera mejor.

Espero haya sido claro en explicar el tema de declaración de variables, por favor comenten y/o pregunten.

Gracias

Lobito


(*)galimatías.

(Del fr. galimatias, discurso o escrito embrollado, y este del gr. κατὰ Ματθαῖον, según Mateo, por la manera en que este evangelista describe la genealogía que figura al comienzo de su Evangelio).

1. m. coloq. Lenguaje oscuro por la impropiedad de la frase o por la confusión de las ideas.

2. m. coloq. Confusión, desorden, lío.

jueves, 24 de septiembre de 2009

1. Introducción al AS 3.0

Veamos, creo que todo tiene un inicio, y voy a intentar de la mejor manera que este sea un para aquellos que empiezan en el AS3 y sobre todo en el mundo de la programación.

¿Por qué Action Script?

Son muchas las razones para usar este lenguaje de programación:

  • Mover nuestros objetos.
  • Asignar acciones a botones para que el usario interactue por nuestra web o aplicación de escritorio.
  • Realiza una precarga de datos para usar en nuestra aplicación.
  • Y un largo etc…

La mejor forma de conseguir realizar aplicaciones complejas, es empezar por otras mas sencillas para conocer bien las posibilidades de este lenguaje, y una vez comprendidas, lanzarnos a la piscina, y comenzar a combinar estas, hasta llegar a realizar aplicaciones mas complejas.

Pero vamos, poco a poco y llegaremos lejos.


¿Cómo usarlo?

Bueno AS3 no te obliga a hacer alguna acción de una manera específica, la idea es conocer bien las herramientas, y al final usarlas segun nuestras necesidades, lo bueno del AS3 es que podemos hacer una misma cosa de diferentes maneras, lo ideal es hacerlo lo mas sencillo posible y llegar a lo que queremos, sin mucho rollo.


Relación entre nuestro propio lenguaje y el lenguaje de Flash

Para los que han estudiado programación esto se les hara super facil y conocido,

ahora, para los que no, aunque parezca raro esto sera muy sencillo, se trata del Pseudocódigo

Todos nosotros somo Programadores por naturaleza, todos aunque no lo crean, cuando nos levantamos mentalmente vamos programando todas las actividades de nuestro día, y si no son todas las del día cuando menos lo que haremos en el momento de levantarnos de la cama antes de salir a hacer nuestras cosas, Por ejemplo:


1 Ventilamos la habitación.

2 Sacamos ropa del ropero.

3. Ponemos agua a hervir.


Mientras Hierve el agua, (esto sería un bucle do…. while, hacer mientras…)

Sacamos una taza del repostero y sacamos la leche del refigerador, y ponemos las tostadas en el tostador.

Si ya hirvió el agua (esto sería un bucle if )

le ponemos la leche

Si no ha hervido el agua (este sería el else del bucle)

cogemos las tostadas y le vamos poniendo la mermelada…,

Mientras acaba de hervir el agua (esto sería otro bucle do…. while, hacer mientras…)

Prendemos la terma

Nos tomamos una taza de leche con las tostadas mientras calienta la terma para ducharnos

Luego nos duchamos y nos vestimos, y segun en funcion al dia que sea elegimos (esto sería un switch case)

En e l caso que sea sábado, nos vamos de compras (esto sería algo así: case “findesemana”=accion;)
En e l caso que sea laboral, vamos directos al trabajo (esto sería algo así: case “entresemana”=accion;)
En e l caso que sea vacaciones, Prendemos el carro y nos vamos a la playa… (case “fiestaaa”=accion;)

Como veis al final los bucles son parte de nuestra vida cotidiana, y de hecho los usamos a diario.


Asi amigos, para hacer una aplicación debemos coger un papel hacer nuestro history Board y luego escribir el Pseudocodigo, cuando lo tengamos Claro, lo pasamos a AS3 les aseguro que lo hicieron bien quedaran super contentos con los resultados.

Ahora yo se, y lo digo por experiencia, que muchos tenemos jefes que nos apuran y nos exigen rapidez y cumplimiento y vamos a terminar casi siempre haciendo todo defrente en el AS3, pero en lo posible amigos traten de hacer en un papel y realizar su Pseudocodigo.


Cuando escribimos en AS es interesante comentar nuestro código, para que si algun dia decidimos reutilizarlo entendemos como y para que hicimos esto u aquello.

Para los comentarios usaremos:

  • // Para comentar una línea: //Comentario de una línea
  • /* …… */
  • /*
    Comentario 1
    Comentario 2
    Comentario 3
    */

También es intersante saber, que hay varios operadores para trabajar con las propiedades de los objetos. El más común ++, sirve para incrementar el valor, y se puede representar de 3 formas:

miVariable.x ++;

miVariable.x = miVariable.x + 1;

miVariable.x +=1;

de las 3 formas obtendremos el mismo resultado.

ahora si quieren ver mas variedad de operadores, les recomiendo la siguiente pagina para que puedan tener una mejor referencia.

Ver Operadores de AS3


Lobito.