Variables, Ámbito y Comprobación de Tipo

Get Started. It's Free
or sign up with your email address
Variables, Ámbito y Comprobación de Tipo by Mind Map: Variables, Ámbito y Comprobación de Tipo

1. 4. Ámbito

1.1. ¿Que es?

1.1.1. Rango de sentencias en las que es visible la variable

1.2. Se divide en

1.2.1. Estático

1.2.1.1. ligadura de nombres a variables no locales que ocurre en tiempo de compilación

1.2.1.1.1. Ejemplo de Programas

1.2.2. Dinámico

1.2.2.1. basado en llamadas a subprogramas el ámbito sólo puede determinarse en tiempo de ejecución

1.2.2.1.1. Ejemplo de Programas

1.2.3. Entorno de Referencia

1.2.3.1. Colección de todos los identificadores visibles en una sentencia

1.2.3.2. Lenguajes

1.2.3.2.1. Ámbito Estático

1.2.3.2.2. Ámbito Dinámico

2. 5 Constantes

2.1. su valor no puede cambiarse

2.2. Manifiestas

2.2.1. Constantes con ligadura estatica

2.2.2. Constantes con ligadura dinamica

2.2.2.1. Java: public static final numero = 2 * i + j;

3. 6. Inicialización de Variables

3.1. ¿Que es?

3.1.1. ligadura de un valor a una variable en el momento en el que se liga el almacenamiento

3.2. Puede ser

3.2.1. Variables inicializadas

3.2.2. Variables no inicializadas

4. 1. Variables

4.1. Estan formadas por

4.1.1. Nombre

4.1.1.1. Es una cadena de caracteres

4.1.1.1.1. Puede emplearse el conector _

4.1.1.1.2. Puede llevar mayúsculas y minusculas

4.1.1.1.3. No puede ser una palabra clave, especial,reservada o nombre definido

4.1.2. Dirección

4.1.2.1. Direccion de memoria a la que esta asociada

4.1.2.1.1. La dirección de una variable se denomina l-valor

4.1.2.1.2. Alias

4.1.3. Tipo

4.1.3.1. determina

4.1.3.1.1. Rango de valores que puede tomar

4.1.3.1.2. Operaciones definidas por el tipo

4.1.4. Valor

4.1.4.1. La parte derecha de una asignación.

4.1.4.2. El valor de una variable se denomina r-valor

4.1.5. Tiempo de vida

4.1.6. Ambito

5. 2. Ligadura

5.1. ¿ Que es?

5.1.1. Asociacion entre atributo y entidad

5.1.1.1. ¿ Momento en que se produce?

5.1.1.1.1. TIEMPO DE LIGADURA

5.2. Se divide

5.2.1. Ligadura Estatica

5.2.1.1. Antes del tiempo de ejecución y permanece inalterable.

5.2.2. Ligadura Dinamica

5.2.2.1. Durante el tiempo de ejecución y puede cambiar

5.3. Subtemas

5.3.1. Ligadura de Tipos

5.3.1.1. Ligadura Estática de Tipos

5.3.1.1.1. Puede hacerse mediante

5.3.1.2. Ligadura Dinámica de Tipos

5.3.1.2.1. No se especifica el tipo de una variable mediante una sentencia de declaración.

5.3.2. Ligadura de Espacio y Tiempo de Vida

5.3.2.1. Tenemos tres procesos

5.3.2.1.1. Proceso de Asignación.

5.3.2.1.2. Proceso de Desasignación.

5.3.2.1.3. Tiempo de Vida

6. 3. Tipos

6.1. Comprobación

6.1.1. Asegura que los operandos de un operador son de tipos compatibles

6.1.2. Coacción

6.1.2.1. Convertir implícitamente una variable en un tipo legal.

6.2. Disciplina (strong typing)

6.2.1. Si los errores de tipos se detectan siempre

6.2.1.1. Necesario determinar los tipos de todos los operandos, en tiempo de compilación o de ejecución

6.2.2. Ejemplo

6.3. Compatibilidad

6.3.1. Métodos

6.3.1.1. Compatibilidad de Tipos Nominal

6.3.1.1.1. Si dos variables tienen tipos compatibles y están ligadas al mismo nombre de tipo

6.3.1.1.2. Ejemplo

6.3.1.2. Compatibilidad de Tipos Estructural

6.3.1.2.1. dos variables tienen tipos compatibles si sus tipos tienen la misma estructura

6.3.1.3. Equivalencia de Declaración

6.3.1.3.1. dos variables tienen tipos compatibles si uno de los tipos está definido con el nombre del otro

6.3.1.3.2. type T = array [1..10] of integer; S = T;