fbpx
Wikipedia

Variable (programación)

En programación, una variable está formada por un espacio en el sistema de almacenaje (memoria principal de un ordenador) y un nombre simbólico (un identificador) que está asociado a dicho espacio. Ese espacio contiene una cantidad de información conocida o desconocida, es decir un valor. El nombre de la variable es la forma usual de referirse al valor almacenado: esta separación entre nombre y contenido permite que el nombre sea usado independientemente de la información exacta que representa. El identificador, en el código fuente de la computadora puede estar ligado a un valor durante el tiempo de ejecución y el valor de la variable puede por lo tanto cambiar durante el curso de la ejecución del programa. El concepto de variables en computación puede no corresponder directamente al concepto de variables en matemática. El valor de una variable en computación no es necesariamente parte de una ecuación o fórmula como en matemáticas. En computación una variable puede ser utilizada en un proceso repetitivo: puede asignársele un valor en un sitio, ser luego utilizada en otro, más adelante reasignársele un nuevo valor para más tarde utilizarla de la misma manera. Procedimientos de este tipo son conocidos con el nombre de iteración. En programación de computadoras, a las variables, frecuentemente se le asignan nombres largos para hacerlos relativamente descriptivas para su uso, mientras que las variables en matemáticas a menudo tienen nombres escuetos, formados por uno o dos caracteres para hacer breve en su transcripción y manipulación.

El espacio en el sistema de almacenaje puede ser referido por diferentes identificadores . Esta situación es conocida entre los angloparlantes como "aliasing" y podría traducirse como "sobre nombramiento" para los hispanoparlantes. Asignarle un valor a una variable utilizando uno de los identificadores cambiará el valor al que se puede acceder a través de los otros identificadores.

Los compiladores deben reemplazar los nombres simbólicos de las variables con la real ubicación de los datos. Mientras que el nombre, tipo y ubicación de una variable permanecen fijos, los datos almacenados en la ubicación pueden ser cambiados durante la ejecución del programa.

Las variables pueden 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 de dato 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 en su mayoría.

Tipos de datos

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

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 posterior.

Almacenamiento de variables en 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, este puede ser:

  • Local: Cuando la misma solo es accesible desde un único procedimiento fijo, 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 solo 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 número entero. El atributo es un concepto que no define a un objeto de una clase determinada, sino que es una variable que sirve de apoyo a los procedimientos y define conceptualmente objetos.

Véase también

  •   Datos: Q877977

variable, programación, programación, variable, está, formada, espacio, sistema, almacenaje, memoria, principal, ordenador, nombre, simbólico, identificador, está, asociado, dicho, espacio, espacio, contiene, cantidad, información, conocida, desconocida, decir. En programacion una variable esta formada por un espacio en el sistema de almacenaje memoria principal de un ordenador y un nombre simbolico un identificador que esta asociado a dicho espacio Ese espacio contiene una cantidad de informacion conocida o desconocida es decir un valor El nombre de la variable es la forma usual de referirse al valor almacenado esta separacion entre nombre y contenido permite que el nombre sea usado independientemente de la informacion exacta que representa El identificador en el codigo fuente de la computadora puede estar ligado a un valor durante el tiempo de ejecucion y el valor de la variable puede por lo tanto cambiar durante el curso de la ejecucion del programa El concepto de variables en computacion puede no corresponder directamente al concepto de variables en matematica El valor de una variable en computacion no es necesariamente parte de una ecuacion o formula como en matematicas En computacion una variable puede ser utilizada en un proceso repetitivo puede asignarsele un valor en un sitio ser luego utilizada en otro mas adelante reasignarsele un nuevo valor para mas tarde utilizarla de la misma manera Procedimientos de este tipo son conocidos con el nombre de iteracion En programacion de computadoras a las variables frecuentemente se le asignan nombres largos para hacerlos relativamente descriptivas para su uso mientras que las variables en matematicas a menudo tienen nombres escuetos formados por uno o dos caracteres para hacer breve en su transcripcion y manipulacion El espacio en el sistema de almacenaje puede ser referido por diferentes identificadores Esta situacion es conocida entre los angloparlantes como aliasing y podria traducirse como sobre nombramiento para los hispanoparlantes Asignarle un valor a una variable utilizando uno de los identificadores cambiara el valor al que se puede acceder a traves de los otros identificadores Los compiladores deben reemplazar los nombres simbolicos de las variables con la real ubicacion de los datos Mientras que el nombre tipo y ubicacion de una variable permanecen fijos los datos almacenados en la ubicacion pueden ser cambiados durante la ejecucion del programa Las variables pueden ser de longitud Fija Cuando el tamano de la misma no variara a lo largo de la ejecucion del programa Todas las variables sean del tipo de dato que sean tienen longitud fija salvo algunas excepciones como las colecciones de otras variables arrays o las cadenas Variable Cuando el tamano de la misma puede variar a lo largo de la ejecucion Tipicamente colecciones de datos en su mayoria Indice 1 Tipos de datos 2 Variables y paso de parametros a subalgoritmos 3 Almacenamiento de variables en memoria 4 Ambito 5 Vease tambienTipos de datos EditarArticulo 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 estan determinadas por el tipo de datos en cuestion Algunos tipos de datos usados Tipo de dato logico Tipo de dato entero Tipo de dato de coma flotante real con decimales Tipo de dato caracter Tipo de dato cadena Variables y paso de parametros a subalgoritmos EditarArticulo principal Argumento Ciencias de la computacion 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 ambito 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 debera devolver el nuevo valor de la misma Si no se realiza esta operacion el valor de la variable sera exactamente el mismo que tenia antes de pasar por la funcion Por referencia No se pasa el valor directamente de la variable si no una referencia o puntero a la misma que contiene la direccion 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 seran accesibles a posterior Almacenamiento de variables en memoria EditarArticulo principal Asignacion 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 esta asociada a un tipo de datos el cual y en funcion del tamano del mismo determina la cantidad de bytes que seran 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 politicas de reserva de memoria Reserva fija de memoria Implica predeterminar la cantidad de memoria que se asignara a la coleccion Es una politica extremadamente rigida ya que llegados al final de la zona de memoria no se podrian almacenar nuevos elementos Reserva variable de memoria Se dedica una zona de memoria pudiendo ser de un tamano predeterminado o no y en caso de sobrepasarse dicha zona de memoria se vuelve a asignar otra zona contigua o no para impedir la restriccion mencionada arriba Ambito EditarArticulo principal Ambito programacion Respecto al ambito de una variable este puede ser Local Cuando la misma solo es accesible desde un unico procedimiento fijo no pudiendo ser leida o modificada desde otro procedimiento hermano o desde el propio procedimiento padre Es posible declarar variables en bloques de condicion bucles etc de tal modo que solo pueda accederse a ellas en el propio bloque Global Cuando la misma es accesible tanto desde rutinas o macros de la aplicacion como en todos los procedimientos y funciones de la misma Si bien es cierto que de una forma basica se puede definir el ambito de las variables de la forma expuesta mas 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 ambito de una variable en el lenguaje de programacion Java public class A public Integer numeroEntero new Integer Variable Global a todos los Metodos public Integer metodo int num 1 Variable Local a metodo Puede accederse dentro de este metodo en cualquier parte pero no fuera del mismo for int i 0 i lt numeroEntero intValue i i es local al bucle for solo puede ser accedida dentro del mismo num i i 2 Esta linea provocaria 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 aqui 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 metodos 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 numero entero El atributo es un concepto que no define a un objeto de una clase determinada sino que es una variable que sirve de apoyo a los procedimientos y define conceptualmente objetos Vease tambien EditarAmbito programacion Variable global Variable estatica Variable externa Variable de instancia Variable de clase Variable de entorno Tipo de dato Constante Datos Q877977 Obtenido de https es wikipedia org w index php title Variable programacion amp oldid 146806475, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos