Foros del Web » Creando para Internet » Flash y Actionscript »

Que es una Funcion??

Estas en el tema de Que es una Funcion?? en el foro de Flash y Actionscript en Foros del Web. Que tal gente necesito que alguien evacue una duda que tengo con respecto a que son y para que sirven las llamadas "Funciones", ( sean ...
  #1 (permalink)  
Antiguo 17/09/2004, 17:48
Avatar de Hard Rock`80  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina.
Mensajes: 53
Antigüedad: 13 años, 2 meses
Puntos: 0
Que es una Funcion??

Que tal gente necesito que alguien evacue una duda que tengo con respecto a que son y para que sirven las llamadas "Funciones", ( sean lo mas claro posible, debido a que todavia tengo algunas dificultades con esto de la programacion ), saludos, Hard.
  #2 (permalink)  
Antiguo 17/09/2004, 18:01
Avatar de Abelius  
Fecha de Ingreso: mayo-2004
Ubicación: Miami, FL, USA
Mensajes: 248
Antigüedad: 13 años, 7 meses
Puntos: 0
Basicamente, una funcion es algo que tu usas para hacer algo mas... Con la excepcion que tu puedes hacer ese "algo" un monton de veces sin hacerlo enteramente CADA vez...

Por ejemplo: (el ejemplo que te dare es muy ilustrativo, pero no necesariamente aplicable a un programa, solamente para te des una idea)

function hacer_huevos_fritos(cantidad_de_huevos) {
Sacar huevos del refrigerador;
Poner sarten al fuego;
Prender fuego;
Poner huevos en sarten;
Esperar hasta que estan a punto;
Quitar del fuego y servir
}

Suponte que tu vas a repetir ese procedimiento muchas veces... Tu quieres escribir todo eso, cada vez que tu haces huevos???
No. Simplemente llamas la funcion y le dices cuantos huevos van en la "cantidad_de_huevos"...

Ahora, aqui va una funcion mas simple. Esa funcion va a multiplicar el numero por 2, eso es todo lo que vamos a hacer...

function multiplicar(x) {
y = x * 2;
alert(y);
}

Al llamar la funcion, esa funcion lo primero que hace es preguntarse "OK, que numero quieren que yo multiplique por dos? Y entonces lo hace...

Finalmente: Lo que va entre parentesis se llama un argumento... :)

Espero no haberte ofendido por lo simplista, o haberte aburrido...
__________________
Cordialmente,
Abel K
Miami, FL, USA
World Kit
  #3 (permalink)  
Antiguo 18/09/2004, 04:13
Avatar de Hard Rock`80  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina.
Mensajes: 53
Antigüedad: 13 años, 2 meses
Puntos: 0
abelius:

Te agradesco la explicacion, quedo mas que claro el ejemplo y con respecto a lo simplista, no es una ofensa sino una forma practica de entender como trabaja la formula, saludos, Hard.
  #4 (permalink)  
Antiguo 18/09/2004, 05:29
Avatar de pulento  
Fecha de Ingreso: noviembre-2002
Ubicación: En un pequeño, helado, obscuro reino... llamado Dinamarca.
Mensajes: 1.852
Antigüedad: 15 años
Puntos: 1
Las funciones son mi elemento preferido de trabajo en programacion..
Por eso no puedo evitar meter la cuchara en el tema...

Una funcion es un tipo de herramienta para obtener un resultado, ese resultado puede ser un resultado numerico, texto o una accion a desarrollar por parte de uno o mas clip.

Una funcion puede o no tener argumentos.

La funcion trabaja de acuerdo a una llamada por parte de un clip al cual la funcion esta asociada.

Ok hasta aqui tenemos varios conceptos que pueden parecer abstractos ..: herramienta, resultado, llamada, argumentos, asociada.

Los argumentos de una funcion son los valores q se le pasan a esta, para hacer los calculos y entregar un resultado.
Ej.: funcion calculaElMayor(x,y){
if(x>y){return x;}
else if(y>x){return y;}
else{trace("Los numeros "+ x +" e " + y + " son iguales");}
}
Los argumentos de esta funcion son x e y, y los valores q estos argumentos adopten seran usados para el calculo, en este caso comparacion y luego se entrega un resultado q sera un numero o un mensaje.

Una funcion es una herramienta, debido a q se utilizan para cumplir una, como el nombre lo dice "funcion" y siempre desarrollara la misma funcion o trabajo.

Una funcion entrega un resultado luego q ha sido llamada por un clip y este resultado es lo que el clip espera q suceda cada vez que la funcion es llamada.

Ej.: funcion dividir(x,y){
return x/y;
}
En este caso el resultado seria la divicion de x por y. Que será numerico.

Se debe decir q hay funciones q no entregan resultados, sino que realizan una accion..
Ej una funcion puede mover un clip, quitarle o darle valor al alpha.. etc. esto seria una accion y no una entrega de resultado.

Una funcion es llamada por un clip o la linea de tiempo en la q se encuentra, esto es lo q se denomina llamada de una funcion.
Ej.: una llamada de funcion por un clip

myClip.dividir(7899,19);

Ej.: una llamada de funcion desde la linea de tiempo.

dividir(7899,19);

Una funcion puede o no estar asociada a un clip. Una funcion asociada a un clip es una funcion q esta dentro de este clip y por lo tanto no puede ser llamada por otro clip sin hacer referencia al primero donde la funcion se encuentra.

Una funcion puede no estar asociada a ningun clip y por lo tanto ser llamada por cualquier clip y funcionar como si estuviera dentro de este.

Estas fucciones son funciones globales y se declaran en la linea de tiempo principal. Para hacer una llamada a estas funciones se debe anteponer "_root" delante del nombre de la funcion
si haces la llamada desde la linea de tiempo de un clip seria asi.:
Ej.: _root.dividir(254,2);

Espero haber aportado con un poco de luz en esta noche obscura de funciones reveldes..


Ademas con un posteo como este celebro mi posteo numero mil... q mal q mal tiene su significacion...


Salu2
__________________
http://www.flotdesign.dk/

Última edición por pulento; 19/09/2004 a las 12:07
  #5 (permalink)  
Antiguo 18/09/2004, 12:31
Avatar de Abelius  
Fecha de Ingreso: mayo-2004
Ubicación: Miami, FL, USA
Mensajes: 248
Antigüedad: 13 años, 7 meses
Puntos: 0
Ahi tienes... :)

Una mejorar explicacion no podras encontrar... GRACIAS, PULENTO...! :) :)
__________________
Cordialmente,
Abel K
Miami, FL, USA
World Kit
  #6 (permalink)  
Antiguo 18/09/2004, 16:57
Avatar de Hard Rock`80  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina.
Mensajes: 53
Antigüedad: 13 años, 2 meses
Puntos: 0
Gracias pulento!!!!, mas claro imposible, ojala todas las explicaciones fueran como esta
P.D.: feliz posteo numero mil!!! , saludos Hard.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:10.