Hola y bienvenidos.
Vamos a ver la ejecución paso a paso de nuestra función.
Están listos?
Vamos.
Bien debido a que queremos ejecutar paso a paso este código, de momento vamos a asignar valores en
código a nuestras variables para que podamos ejecutarlo paso a paso sin ningún problema.
Así que vamos a quitar este código y ahora la variable de argumento A le voy a asignar el valor de dos
y la variable de argumento b el valor de tres.
La variable de resultado va almacenar el valor que retorne la función de sumar.
Así que vamos a agregar un punto de ruptura en la línea 11 para poder ejecutar paso a paso.
Así que presionamos el botón de este hover.
Íbamos a comenzar con la ejecución paso a paso de nuestro programa.
En la parte inferior podemos llevar también que de momento se está ejecutando la función main, pero
en un momento más vamos a ver cómo se agrega a la pila de llamadas la llamada de la función sumar.
Así que de manera muy similar a nuestra animación que estamos agregando, también el IDE nos muestra
este tipo de información.
Sin embargo, no es tan visual, pero sí puede ayudarnos Para conocer un poco más del detalle de la
ejecución paso a paso de nuestras funciones.
Bien, así que en primer lugar, ejecutamos la línea 11, presionamos Step Over y entonces en memoria
se crean nuestras variables.
Argumento va con el valor de dos y la variable argumento V con el valor de tres, tal cual los valores
que le hemos asignado a nuestras variables y también si vamos a la parte inferior en localhost, podemos
ver que también se han creado estas variables.
Argumento A con el valor de dos y argumento B con el valor de tres y también la variable de resultado,
pero de momento tiene un valor basura.
Bien, vamos a continuar.
En este caso ya estamos en la línea 13.
Si queremos entrar al detalle de la función de sumar en lugar de este hover, vamos a presionar el botón
de este pin, como ya sabemos.
Así que presionamos este pin para entrar al detalle de la función y entonces en memoria se manda llamar
nuestra función sumar.
Podemos observar que se agrega a la pila de llamadas de nuestras funciones y también en nuestro IDE
podemos observar que se ha mandado a llamar la función de sumar y esta es la función que se está ejecutando
en este momento.
Simplemente el orden es distinto, ya que aquí se están agregando las funciones hacia abajo y en este
caso la función que se está ejecutando en este momento está hasta arriba, pero es prácticamente lo
mismo, solamente es la forma en que se está animando todo este código.
Bien, entonces ya sabemos que tenemos la función sumar, es la que se está ejecutando en este momento
y la función de main se pone en pausa y entonces hasta que no termine de ejecutarse, la función de
sumar no continúa la función de main.
Lo mismo podemos observar en nuestra animación del lado derecho la memoria stack.
Tenemos en pausa la función principal y se está ejecutando en este momento la función de sumar.
Y también se van a crear estas variables con los siguientes valores Bien.
Así que se ejecuta la llamada de la función de sumar.
Entonces se pasa una copia de los argumentos.
El argumento A le pasa una copia del valor a la variable A y también el argumento B le pasa una copia
del valor al parámetro B, así que se pasa una copia de cada una de estas variables en el orden en que
se han declarado.
En este caso podemos observar que se manda la información de izquierda a derecha.
Así es como se lee esta información.
Así que realmente lo que sucede se encuentra primero esta variable y entonces también de izquierda a
derecha se asignan estos valores.
Posteriormente, después de la coma, continuamos con la siguiente información Y así es como se van
asignando estos valores.
Se van leyendo de izquierda a derecha y posteriormente en la línea cinco.
Si la ejecutamos, entonces se revisa la suma de ambas B y se asigna este valor a la variable de resultado
suma.
Así que en nuestra memoria tenemos lo siguiente.
La variable de resultado suma se le asigna el valor de cinco.
Ahora, para que este valor no se pierda, entonces precisamente lo que vamos a hacer es regresar este
valor.
Por ello la palabra return se regresa a la llamada de la función principal y este valor que se regresa
se asigna a la variable de resultado.
Así que ejecutamos la línea seis, presionamos este hover.
Entonces, en nuestra animación podemos observar que se termina de ejecutar la llamada de la función
de sumar, pero se regresó el valor a la variable de resultado.
Así que nuestra variable de resultado ya tiene almacenada esta información, así que se presionamos.
Este hover se termina de llamar a la función de sumar.
Podemos llevar también aquí en el IDE que ya se quitó la llamada de nuestra función de sumar y ya estamos
de nueva cuenta en nuestro método principal ejecutando la línea 14.
Y también del lado derecho podemos observar que la variable de resultado ya tiene el valor de cinco.
Así que toda esta información también la tenemos en nuestro IDE, pero les estamos agregando esta animación
para que sea todavía más visual y más clara de lo que está sucediendo.
Así que vamos a ejecutar ahora la línea 14.
Presionamos este hover y entonces en la salida podemos llevar el resultado de la suma.
Es igual a cinco.
Se está mandando a imprimir el valor de la variable de resultado, así que se manda a imprimir este
valor el valor de cinco.
Pero ya sabemos que también podríamos mandar a imprimir directamente la llamada de la función sumar
y el resultado de mandar a llamar a esa función también aquí se imprimiría, así que también se imprimiría
exactamente este mismo valor el valor de cinco, y así podríamos ahorrar esta variable.
Pero debido a que estamos comenzando, de momento lo estamos separando para que todo quede completamente
claro.
Así que esta es la ejecución.
Paso a paso.
Vamos a terminar.
Presionamos de nueva cuenta este hover y de nueva cuenta este hover para que podamos salir de la ejecución
de nuestro programa.
Quitamos el punto de ruptura y con esto ya hemos terminado la ejecución paso a paso de nuestro programa.
Y al final también recordemos que si se termina de ejecutar nuestro método principal, entonces también
se quita de la memoria estas variables y también la llamada al método principal.
Bien, así que pongan en práctica la ejecución paso a paso de la función que hemos trabajado y nos vemos
en el siguiente vídeo.
Saludos.