Variable (programación)

Variable (programación)
Para otros usos de este término, véase Variable.

En programación, las variables son espacios reservados en la memoria que, como su nombre indica, pueden cambiar de contenido a lo largo de la ejecución de un programa. Una variable corresponde a un área reservada en la memoria principal del ordenador pudiendo ser de longitud:

  • Fija.- Cuando el tamaño de la misma no variará a lo largo de la ejecución del programa. Todas las variables, sean del tipo que sean tienen longitud fija, salvo algunas excepciones — como las colecciones de otras variables (arrays) o las cadenas.
  • Variable.- Cuando el tamaño de la misma puede variar a lo largo de la ejecución. Típicamente colecciones de datos.

Contenido

Tipos de datos

Artículo principal: Tipo de dato

Debido a que las variables contienen o apuntan a valores de tipos determinados, las operaciones sobre las mismas y el dominio de sus propios valores están determinadas por el tipo de datos en cuestión. Algunos tipos de datos usados:

Variables y paso de parámetros a subalgoritmos

Artículo principal: Argumento (Ciencias_de_la_computación)#Paso_de_Argumentos

Las variables pueden ser intercambiadas entre rutinas, por valor y por referencia:

  • Por valor.- Se copia el valor (el dato) de la variable en la zona de la pila de llamadas —de ámbito local— que corresponde a la nueva subrutina llamada. Por tanto, esta subrutina obtiene dicho valor pero no puede modificar la variable original. Esto significa que si la variable sufre alteraciones dentro de esta rutina, para poder acceder a dichas modificaciones al finalizar, deberá devolver el nuevo valor de la misma. Si no se realiza esta operación, el valor de la variable será exactamente el mismo que tenía antes de pasar por la función.
  • Por referencia.- No se pasa el valor directamente de la variable, si no una referencia o puntero a la misma —que contiene la dirección de la zona de memoria donde se aloja el contenido—, de tal modo que se opera directamente sobre la zona de memoria que la contiene, lo cual implica que las modificaciones que sufra serán accesibles a posteriori.

Almacenamiento de variables en memoria

Artículo principal: Asignación de memoria

Las variables se representan con identificadores que hacen referencia a un lugar de la memoria del programa en donde se almacena un dato. Una variable está asociada a un tipo de datos, el cual y en función del tamaño del mismo determina la cantidad de bytes que serán necesarios para almacenar la variable. En el caso de colecciones y al contrario que con el resto de tipo de datos, ya sean primitivos u objetos complejos, la memoria asignada a almacenar tales variables no se conoce de antemano, lo cual lleva a establecer políticas de reserva de memoria:

  • Reserva fija de memoria.- Implica predeterminar la cantidad de memoria que se asignará a la colección. Es una política extremadamente rígida, ya que llegados al final de la zona de memoria no se podrían almacenar nuevos elementos.
  • Reserva variable de memoria.- Se dedica una zona de memoria, pudiendo ser de un tamaño predeterminado o no, y en caso de sobrepasarse dicha zona de memoria se vuelve a asignar otra zona, contigua o no, para impedir la restricción mencionada arriba.

Ámbito

Respecto al ámbito de una variable, éste puede ser:

  • Local: Cuando la misma sólo es accesible desde un único procedimiento hijo, no pudiendo ser leída o modificada desde otro procedimiento hermano o desde el propio procedimiento padre. Es posible declarar variables en bloques de condición, bucles, etc de tal modo que sólo pueda accederse a ellas en el propio bloque.
  • Global: Cuando la misma es accesible tanto desde rutinas o macros de la aplicación, como en todos los procedimientos y funciones de la misma.

Si bien es cierto, que de una forma básica, se puede definir el ámbito de las variables de la forma expuesta más arriba, existen grados de globalidad de las mismas, pudiendo ser accesibles desde unos puntos u otros, o incluso pudiendo ser accesibles entre aplicaciones distintas, llegando al caso de la superglobalidad. Ejemplo del ámbito de una variable en el lenguaje de programación Java.

 public class A {
    public Integer numeroEntero = new Integer(); /* Variable Global a todos los Métodos */
 
    public Integer metodo() {
       int num = 1; // Variable Local a metodo. Puede accederse dentro de este método en cualquier parte, pero no fuera del mismo.
       for (int i = 0;i<numeroEntero.intValue();i++) { // i es local al bucle for, sólo puede ser accedida dentro del mismo.
           num *= i;
       }
       // i = 2; Esta línea provocaría error al no haber declarado la variable i. i fue definida localmente al bucle for.
       return Integer.valueOf(num);
    }
 
    public void otroMetodo() {
       int num = 1; // Variable local a otroMetodo. num aquí es una variable distinta a la variable num de metodo
       System.out.println("Variable local num: " + num);
    }
 }
Hay que tener en cuenta que en Java el caso de las variables globales a todos los métodos que se encuentran en una clase, es algo peculiar, ya que estas realmente son atributos que definen un objeto de una clase determinada, en este caso la clase A tiene un atributo llamado numeroEntero. El atributo es un concepto que define a un objeto de una clase determinada, mientras que una variable sirve de apoyo a los procedimientos y no define conceptualmente objetos.

Véase también


Wikimedia foundation. 2010.

Игры ⚽ Нужен реферат?

Mira otros diccionarios:

  • Variable (programación) — Para ver otros usos de variable ver la página de desambiguación. En programación, las variables son estructuras de datos que, como su nombre indica, cambian a lo largo de la ejecución de un programa. Una variable corresponde a un área reservada… …   Enciclopedia Universal

  • Variable — ► adjetivo 1 Que varía o puede variar. 2 Que es inestable o inconstante: ■ tiene una personalidad variable. ► sustantivo femenino 3 LÓGICA, MATEMÁTICAS Término indeterminado que, en una relación ouna función, puede ser reemplazado por diversos… …   Enciclopedia Universal

  • Programación lineal — Saltar a navegación, búsqueda La Programación Lineal es un procedimiento o algoritmo matemático mediante el cual se resuelve un problema indeterminado, formulado a través de ecuaciones lineales, optimizando la función objetivo, también lineal.… …   Wikipedia Español

  • Variable de clase — en programación orientada a objetos una variable de clase o miembro de dato estático es una variable, al contrario que las variable de instancia, propia de la clase que la contiene, y no de instancias de la misma, esto quiere decir que todos los… …   Wikipedia Español

  • Programación estructurada — Saltar a navegación, búsqueda La programación estructurada es una forma de escribir programas de ordenador (programación de computadora) de forma clara. Para ello utiliza únicamente tres estructuras: secuencia, selección e iteración; siendo… …   Wikipedia Español

  • Programación a nivel funcional — Saltar a navegación, búsqueda La programación a nivel funcional es unos de los dos paradigmas contrastantes identificados por John Backus en su trabajo sobre los Programas como objetos matemáticos, siendo el otro la programación a nivel de… …   Wikipedia Español

  • Programación con restricciones — Saltar a navegación, búsqueda La Programación con restricciones es un paradigma de la programación en informática, donde las relaciones entre las variables son expresadas en términos de restricciones (ecuaciones). Actualmente es usada como una… …   Wikipedia Español

  • Programación a nivel de valores — Saltar a navegación, búsqueda La programación a nivel de valores es unos de los dos paradigmas contrastantes identificados por John Backus en su trabajo sobre los Programas como objetos matemáticos, siendo el otro la programación a nivel… …   Wikipedia Español

  • Programación Orientada a Aspectos — Saltar a navegación, búsqueda La Programación Orientada a Aspectos (POA) es un paradigma de programación relativamente reciente cuya intención es permitir una adecuada modularización de las aplicaciones y posibilitar una mejor separación de… …   Wikipedia Español

  • Variable estática — En informática una variable estática es una variable cuyo valor no varía durante la vida del proceso en ejecución. Normalmente una variable estática tiene un ámbito más amplio que otras variables. Los valores de variables estáticas se pueden… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”