El siguiente articulo hace parte de un grupo de publicaciones que realice en un servidor de Discord.
Fecha original de publicacion: 2024-09-27
— Anterior: Ámbito o alcance de una variable (Scope) (Parte 1 de 3)
Ámbito o alcance de una variable (Scope) (Parte 2 de 3)
Ejemplos
Accesibilidad de variables dependiendo de la relación entre los bloques
(imagen-1) Las variables globales pueden ser accedidas desde cualquier parte del programa, aquí no hay mucho que considerar.
imagen-1

Ahora las variables locales:
Dentro de
FuncionChay una solicitud para acceder (o modificar) aVariableAy ésta nació dentro deFuncionA,FuncionCtambién nace enFuncionA, por cierto, todo bloque hijo muere antes de su bloque padre. Con base en lo anterior,VariableAestá viva y accesible durante toda la vida deFuncionCsiVariableAnació antes queFuncionC.En
FuncionBse solicita acceso aVariableC, pero esta variable solo existe en el tiempo de vida deFuncionD. Si la solicitud es antes de laFuncionDentoncesVariableCaún no nace, pero si es después deFuncionDentonces ya está muerta, básicamente, el bloque padre no puede acceder a las variables del bloque hijo.Por último, dentro de
FuncionDse está solicitando aVariableBque vive enFuncionA, peroFuncionDes sobrino deFuncionAy no viven en el mismo tiempo.
Los bloques hermanos no viven en el mismo tiempo, un bloque hermano vive y muere antes o después de otro. (Con paralelismo y concurrencia rompemos esta afirmación, pero ahora no es el momento de entrar en esto)
(imagen-2) En esta presentación es más sencillo de observar la accesibilidad de las variables dependiendo de la relación del bloque.
imagen-2

Los bloques hijos están directamente arriba de su bloque padre
Los bloques hermanos se encuentran al mismo nivel
Además, los tiempos de vida de los bloques se pueden representar en el eje horizontal y no se superponen.
Las flechan indican el sentido de la solicitud de alguna variable, y al igual que en la imagen-1, las variables fuera de su propio bloque solo siguen viviendo si pertenecen al bloque padre y/o ascendencia directa.
— Descargas
Archivo Excalidraw— Fin seccion
— Continuación: Ámbito o alcance de una variable (Scope) (Parte 3 de 3)
