Una variable és un nom assignat a una àrea d'emmagatzematge que pot ser controlada pel programa. Un tipus de variable especifica la mida i la configuració de la memòria de la variable.
El rang del valor que es pot inserir en una variable es calcula abans d'inserir-hi el valor, ja que s'ha de decidir el tipus de variable abans d'inserir-hi el valor.
Àmbit de les variables
L'abast d'una variable és literalment la vida útil d'una variable. És un bloc de codi en el qual una variable és vàlida o encara viva.
function poo() { var a; }
Dins de la funció 'a', declarem una variable 'poo'. L'abast d'aquesta variable roman dins d'aquesta funció i no es pot utilitzar fora d'aquesta funció.
Hi ha tres llocs on podem utilitzar la variable a la nostra programació.
- En una funció o dins d'un bloc es diu que són variables locals
- Si s'utilitza fora de totes les funcions, s'anomena variables globals
- Si s'utilitza en la definició de paràmetres de funció, s'anomena paràmetres formals.
Diferència Major
- La variable que es declara dins d'una funció s'anomena variable local, mentre que si la variable es declara fora de la funció es coneix com a variable global.
- D'altra banda, quan la funció ha començat l'execució i es perd quan s'acaba, les variables globals es creen quan comença l'execució i es perden quan acaba el programa. Es creen variables locals.
- La variable local no inclou la compartició de dades, mentre que la compartició de dades ve donada per la variable global.
- Les variables locals s'emmagatzemen a la pila, mentre que la variable global l'emmagatzema el programador en una ubicació fixa.
- Per a les variables locals, es necessiten paràmetres mentre que no cal transferir una variable global.
Paràmetre | Local | Global |
---|---|---|
Àmbit | Dins d'una funció. | L'abast està fora de la funció. |
Valor | Si el valor no està inicialitzat, donarà un valor d'escombraries. | Si el valor no s'inicialitza, donarà zero per defecte. |
Tota una vida | Es crea quan la funció comença l'execució i es perd quan acaben les funcions. | Es crea abans que s'iniciï l'execució global del programa i es perd quan el programa finalitza. |
Compartició de dades | No és possible. | Possible. |
Paràmetres | Obligatori. | No requerit. |
Accés per | Variables locals | Podem accedir a variables globals al llarg del programa. |
Emmagatzematge de memòria | A la pila. | En una ubicació fixa tal com li assigna l'ordinador. |
Variable local
La variable local s'especifica al bloc o subrutines de programació com una forma de variable declarada. La variable local persisteix abans que s'executi el bloc de la funció. Després d'això, es perdrà automàticament.
Exemple de variable local
public int sum(){ int x =4; int y=5; return x+y; }
Aquí, 'x' i 'y' són variables locals
Variable global
Una variable que s'especifica fora de la funció o bloc del codi es coneix com a variable global. Té un abast global, la qual cosa significa que conserva la seva rellevància durant la vida útil del programa. Per tant, qualsevol característica especificada dins del programa pot accedir-hi dins del programa, tret que estigui ombrejada.
Exemple de variable global
int x =4; int y=5; public int add(){ return x+y; }
Aquí, 'x' i 'y' són variables globals.
Avantatges d'utilitzar variables globals
- Es pot accedir a la variable global des de totes les funcions o mòduls d'un programa.
- Només hem de declarar una variable global única fora dels mòduls.
- S'utilitza quan l'usuari necessita accedir una i altra vegada a les mateixes dades a tot el programa.
Inconvenients de l'ús de variables globals
- Tantes variables es declaren globals, després romanen a la memòria fins que s'acaba l'execució del programa. Això pot provocar el problema de la memòria sense memòria.
- Qualsevol característica pot canviar les dades. Qualsevol declaració que s'escriu al programa alterarà el valor de la variable global. En entorns multitasques, això pot oferir resultats imprevisibles.
- Hem de modificar tots els mòduls on s'anomenen si les variables globals s'interrompen a causa de la refactorització del codi.
Avantatges de l'ús de variables locals
- Els valors de les variables es mantenen sense canvis mentre s'executa la tasca és el significat bàsic de la variable local.
- Si una sola variable que s'executa simultàniament es modifica per moltes tasques, el resultat pot ser impredictible. Tanmateix, declarar-la com a variable local ho resoldrà.
- Podem assignar el mateix nom a les variables en diferents funcions.
- A mesura que s'executa la funció, la memòria de la variable es deixa lliure.
Inconvenients de les variables locals
- El mètode de depuració d'una variable local és molt complicat.
- Les dades populars s'havien de transmetre regularment, ja que l'intercanvi de dades entre mòduls no és factible.
- Tenen un espectre molt reduït.
Què és més útil?
La variable local i global igualment essencial a l'hora d'escriure un programa en qualsevol idioma. Una gran quantitat de la variable global, però, pot ocupar una gran memòria. Una transició no desitjada a variables globals és cada cop més difícil de definir. També és prudent evitar anunciar variables globals no desitjades.