You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/04-variables/2-declare-variables/solution.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,11 @@ let ourPlanetName = "Earth";
8
8
9
9
Nota che avremmo anche potuto usare un nome più corto, come `planet`, ma potrebbe non essere ovvio a cosa si rifrisce. E' una buona cosa essere un pò più descrittivi. Almeno finche le variabili nonDiventanoTroppoLunghe.
10
10
11
+
# Il nome del visitatore attuale
12
+
13
+
```js
11
14
let currentUserName ="John";
15
+
```
12
16
13
17
Di nuovo, potremmo accorciare il nome con `userName`, se fossimo sicuri che quell'utente sia quello corrente.
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/04-variables/article.md
+35-18Lines changed: 35 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,24 +1,24 @@
1
1
# Variabili
2
2
3
-
La maggior parte delle volte, le applicazioni JavaScript necessitano d'informazione per poter lavorare. Vediamo due esempi:
3
+
La maggior parte delle volte, le applicazioni JavaScript necessitano di lavorare con informazioni. Vediamo due esempi:
4
4
1. Un negozio online -- le informazioni possono riguardare i beni venduti e il carrello.
5
5
2. Un applicazione di messaggistica -- le informazioni possono riguardare utenti, messaggi e molto altro.
6
6
7
7
Le variabili vengono utilizzate per memorizzare informazioni.
8
8
9
9
## Variabile
10
10
11
-
Una variabile [variable](https://en.wikipedia.org/wiki/Variable_(computer_science)) è un "memorizzatore con nome" per i dati. Possiamo usare le variabile per memorizzare informazioni extra, visitatori e altri dati.
11
+
Una [variabile](https://en.wikipedia.org/wiki/Variable_(computer_science)) è uno "spazio di memoria con nome" utilizzato per salvare dati. Possiamo usare le variabili per memorizzare informazioni extra, visitatori e altri dati.
12
12
13
13
Per creare una variabile in JavaScript, dobbiamo utilizzare la parola chiave `let`.
14
14
15
-
L'istruzione sotto crea(in altre parole: *dichiara* o *definisce*) una variabile identificata dal nome "messaggio":
15
+
L'istruzione sotto crea(in altre parole: *dichiara*) una variabile identificata dal nome "messaggio":
16
16
17
17
```js
18
18
let message;
19
19
```
20
20
21
-
Adesso possiamo inserirci dati utilizzando l'operatore di assegnazione `=`:
21
+
Adesso possiamo inserirci dei dati utilizzando l'operatore di assegnazione `=`:
22
22
23
23
```js
24
24
let message;
@@ -53,7 +53,7 @@ Possiamo anche dichiarare più variabili in una riga:
53
53
let user ='John', age =25, message ='Hello';
54
54
```
55
55
56
-
Questo potrebbe risultare più breve, ma è sconsigliato. Per mantenere una migliore leggibilità è meglio utilizzare una riga per ogni variabile.
56
+
Questo potrebbe risultare più breve, ma è sconsigliato. Per mantenere una migliore leggibilità è meglio dichiarare solamente una variabile per riga.
57
57
58
58
L'alternativa a più righe è un po più lunga, ma più facile da leggere:
59
59
@@ -70,7 +70,7 @@ let user = 'John',
70
70
message ='Hello';
71
71
```
72
72
73
-
...O anche con la virgola nella nuova riga:
73
+
...O anche con la virgola su nuova riga:
74
74
75
75
```js no-beautify
76
76
let user ='John'
@@ -92,9 +92,9 @@ La parola chiave `var` è *quasi* la stessa cosa di `let`. Dichiara comunque una
92
92
Ci sono delle sottili differenze tra `let` e `var`, ma per ora non hanno importanza. Le copriremo in dettaglio più avanti, nel capitolo <info:var>.
93
93
````
94
94
95
-
## Unanalogia con il mondo reale
95
+
## Un'analogia con il mondo reale
96
96
97
-
Possiamo comprendere meglio il concetto di "variabile" se la immaginiamo come una scatola per i dati, con appiccicata unetichetta univoca.
97
+
Possiamo comprendere meglio il concetto di "variabile" se la immaginiamo come una scatola per dati, con appiccicata un'etichetta univoca.
98
98
99
99
Per esempio, la variabile `message` può essere immaginata come una scatola con etichetta `"message"` con il valore `"Hello!"` al suo interno:
````warn header="Dichiarare una variabile più di una volta farà scattare un errore"
138
+
Una variabile dovrebbe essere dichiarata una volta sola.
139
+
140
+
La ripetizioni della dichiarazione di una stessa variabile porterà ad un errore:
141
+
142
+
```js run
143
+
let message = "This";
144
+
145
+
// 'let' ripetuto genererà un errore
146
+
let message = "That"; // SyntaxError: 'message' has already been declared
147
+
```
148
+
Quindi, dovremmo dichiarare una variabile una volta sola, e farne riferimento senza la parola chiave `let`.
149
+
````
150
+
137
151
```smart header="Linguaggi funzionali"
138
152
Può essere interessante sapere che esistono anche linguaggi di programmazione [funzionale](https://en.wikipedia.org/wiki/Functional_programming) che vietano di cambiare il valore di una variabile. Per esempio, [Scala](http://www.scala-lang.org/) o [Erlang](http://www.erlang.org/).
139
153
140
154
In questo tipo di linguaggi, una volta che il valore viene memorizzato "dentro la scatola", ci rimane per sempre. Se abbiamo bisogno di memorizzare qualcos altro, il linguaggio ci forza a creare una nuova scatola (dichiarare una nuova variabile). Non possiamo quindi riutilizzare quelle vecchie.
141
155
142
-
Anche se potrebbero sembrare un pò strano a prima vista, questi linguaggi sono veramente capaci di sviluppare grandi cose. Inoltre, ci sono certe situazioni come calcoli paralleli in cui questi limiti portano dei benefici. Studiare un linguaggio di questo tipo (anche se non abbiamo intenzione di utilizzarlo a breve) è consigliato per allargare le proprie conoscenze.
156
+
Anche se potrebbero sembrare un po' strano a prima vista, questi linguaggi sono veramente capaci di sviluppare grandi cose. Inoltre, ci sono certe situazioni come calcoli paralleli in cui questi limiti portano dei benefici. Studiare un linguaggio di questo tipo (anche se non abbiamo intenzione di utilizzarlo a breve) è consigliato per allargare le proprie conoscenze.
143
157
```
144
158
145
159
## Nomi delle variabili [#variable-naming]
@@ -189,11 +203,11 @@ let имя = '...';
189
203
let 我 = '...';
190
204
```
191
205
192
-
Tecnicamente, non ci sono errori, questo tipo di nomi sono permessi, ma la tradizione internazionale è di utilizzare l'alfabeto inglese per il nome delle variabili. Anche se stiamo scrivendo un piccolo script, potrebbe infatti avere una lunga vita. Persone di altre nazionalità potrebbero aver bisogno di leggerlo.
206
+
Tecnicamente, non ci sono errori, questo tipo di nomi sono permessi, ma la tradizione internazionale è di utilizzare l'alfabeto inglese per il nome delle variabili. Anche se stiamo scrivendo un piccolo script, questo potrebbe infatti avere una lunga vita. Persone di altre nazionalità potrebbero aver bisogno di leggerlo.
193
207
````
194
208
195
209
````warn header="Nomi riservati"
196
-
C'e una [lista di parole riservate](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Keywords), che non possono essere utilizzare come nomi di variabili, perchè vengono utilizzate dal linguaggio stesso.
210
+
C'e una [lista di parole riservate](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Keywords), che non possono essere utilizzare come nomi di variabili, perché vengono utilizzate dal linguaggio stesso.
197
211
198
212
Per esempio, le parole `let`, `class`, `return`, `function` sono riservate.
199
213
@@ -228,7 +242,7 @@ num = 5; // errore: num non è definita
228
242
```
229
243
````
230
244
231
-
## Constanti
245
+
## Costanti
232
246
233
247
Per dichiarare una variabile costante (immutabile), dobbiamo utilizzare `const` invece di `let`:
myBirthday = '01.01.2001'; // errore, non è possibile riassegnare la costante!
245
259
```
246
-
Quando il programmatore è sicuro che il valore della variabile non cambierà mai, può utilizzare `const` per soddisfare questa esigenza, e metterlo anche in mostra a tutti gli altri.
260
+
261
+
Quando il programmatore è sicuro che il valore della variabile non cambierà mai, può utilizzare `const` per soddisfare questa esigenza, rendendolo cosi esplicito.
262
+
247
263
248
264
### Le costanti maiuscole
249
265
@@ -272,24 +288,25 @@ Benefici:
272
288
273
289
Quando dovremmo utilizzare lettere maiuscole per una costante, e quando invece trattarle come normali variabili? Facciamo un pò di chiarezza.
274
290
275
-
Essere una "costante" significa che il valore non potrà mai cambiare. Ci sono costanti che sono note prima dell'esecuzione (come la codifia esadecimale del colore rosso), e ci sono quelle che vengono *calcolate* durante l'esecuzione, ma non cambieranno più dopo che gli sarà stato assegnato un valore.
291
+
Essere una "costante" significa che il valore non potrà mai cambiare. Ci sono costanti che sono note prima dell'esecuzione (come la codifica esadecimale del colore rosso), e ci sono quelle che vengono *calcolate* durante l'esecuzione, ma non cambieranno più dopo che gli sarà stato assegnato un valore.
276
292
277
293
Per esempio:
278
294
```js
279
295
const pageLoadTime = /* tempo necessario da una pagina web per caricare */;
280
296
```
281
-
Il valore di `pageLoadTime` non è noto prima del caricamento della pagina, quindi viene trattato come una normale variabile. Ma rimane comunque una costante, perchè non potrà più cambiare dopo che gli sarà stato assegnato un valore.
297
+
298
+
Il valore di `pageLoadTime` non è noto prima del caricamento della pagina, quindi viene trattato come una normale variabile. Ma rimane comunque una costante, perché non potrà più cambiare dopo che gli sarà stato assegnato un valore.
282
299
283
300
In altre parole, i nomi delle costanti in maiuscolo vengono utilizzati con variabili dal valore noto prima dell'esecuzione.
284
301
285
302
## Dare i giusti nomi alle cose
286
303
287
304
Parlando di variabili, c'è un'altra cosa estremamente importante.
288
305
289
-
Per favore, utilizzate i nomi delle variabili con sensibilità. Prendetevi del tempo per pensare se necessario.
306
+
Il nome di una variabile dovrebbe sempre essere pulito, ovvio e descrittivo del suo contenuto.
290
307
291
308
Dare i giusti nomi alle variabili è una delle abilità più importanti (e difficili) nella programmazione.
292
-
Una rapida occhiata ai nomi delle variabili può rivelare se il codice è stato scritto da un beginner o da uno sviluppatore esperto.
309
+
Una rapida occhiata ai nomi delle variabili può rivelare se il codice è stato scritto da un principiante o da uno sviluppatore esperto.
293
310
294
311
In un progetto reale, la maggior parte del tempo lo si perde a modificare ed estendere del codice già esistente, piuttosto che riscriverne uno nuovo. E quando ritorneremo sul codice, dopo aver fatto qualcos'altro, sarà molto pù facile trovare informazioni se sono ben descritte. In altre parole, quando le variabili utilizzano dei nomi efficaci.
295
312
@@ -311,7 +328,7 @@ Il risultato che si ottiene, è che le variabili sono come delle scatole in cui
311
328
312
329
Questo genere di programmatori risparmiano qualche bit nella dichiarazione delle variabili ma perdono dieci volte il tempo risparmiato per fare debugging del codice.
313
330
314
-
Una variable in più va bene, non sono il diavolo.
331
+
Una variabile in più non è necessariamente un male.
315
332
316
333
I browser moderni e JavaScript minimizzano ed ottimizzano il codice abbastanza bene, quindi non ci saranno problemi di performance. Usare variabili differenti, per valori differenti può addirittura aiutare il motore JavaScript nell'ottimizzazione.
0 commit comments