CHI HA PAURA DELL’INTELLIGENZA ARTIFICIALE?

Immagine
  CHI HA PAURA DELL’INTELLIGENZA ARTIFICIALE? DAL SOFTWARE GENERATIVO AGLI AGENTI, DALLA MEDICINA ALLA ROBOTICA: CHE COSA L’AI SA GIÀ FARE, DOVE STA ANDANDO E QUALI RISCHI DOBBIAMO PRENDERE SUL SERIO Ogni tecnologia realmente trasformativa produce due errori speculari. Il primo consiste nel sottovalutarla, considerandola una moda destinata a rientrare. Il secondo consiste nel sopravvalutarla, attribuendole capacità che ancora non possiede e trasformando una tecnologia in una mitologia. Nel 2026 l’intelligenza artificiale si trova esattamente fra questi due estremi. Non è più ragionevole descriverla come un semplice chatbot evoluto; è altrettanto poco ragionevole presentarla come una mente universale prossima a sostituire l’essere umano in ogni attività. La questione interessante, per chi lavora nell’informatica, nella ricerca, nell’impresa o nelle professioni ad alta intensità di conoscenza, non è dunque stabilire se essere ottimisti o pessimisti. È capire che cosa stia realmente c...

Corso di JavaScript & Programmazione Web: 4 – Funzioni

4 – Funzioni

1. Definizione e richiamo di funzioni

Una funzione è un blocco di codice riutilizzabile che esegue un’operazione specifica.
Si definisce con la parola chiave function, seguita da un nome, eventuali parametri tra parentesi tonde e il corpo tra parentesi graffe.

📌 Sintassi base

function saluta() { console.log("Ciao mondo!"); } // Richiamo saluta();

➡️ Output:

Ciao mondo!

2. Parametri e valori di ritorno

Le funzioni possono ricevere parametri (input) e restituire un valore di ritorno (output) con la parola chiave return.

📌 Esempio

function somma(a, b) { return a + b; } let risultato = somma(5, 7); console.log(risultato);

➡️ Output:

12

3. Funzioni freccia (()=>{})

Introdotte in ES6, le funzioni freccia sono una sintassi più compatta, spesso usata con funzioni anonime o callback.

📌 Esempi

// Funzione classica function quadrato(x) { return x * x; } // Funzione freccia equivalente const quadratoArrow = (x) => x * x; console.log(quadrato(4)); // 16 console.log(quadratoArrow(4)); // 16

👉 Se il corpo contiene una sola istruzione, le graffe e return possono essere omessi.
👉 Attenzione: le funzioni freccia non hanno il proprio this, quindi si comportano diversamente in contesti di oggetti.

4. Scope delle variabili

Lo scope definisce la visibilità delle variabili:

  • Globale: dichiarata fuori da qualsiasi funzione → visibile ovunque.

  • Locale: dichiarata dentro una funzione → visibile solo lì.

  • Block scope (let, const): visibile solo all’interno delle parentesi graffe in cui è definita.

📌 Esempio

let globale = "Sono globale"; function esempioScope() { let locale = "Sono locale"; console.log(globale); // ✅ accessibile console.log(locale); // ✅ accessibile } esempioScope(); console.log(globale); // ✅ accessibile // console.log(locale); ❌ errore: locale non definita

5. Esercizio pratico – Funzione palindroma

Un palindromo è una parola che si legge uguale in avanti e indietro (es. "anna", "radar").

📌 Soluzione classica

function isPalindromo(parola) { let parolaInvertita = parola.split("").reverse().join(""); return parola === parolaInvertita; } // Test console.log(isPalindromo("anna")); // true console.log(isPalindromo("cane")); // false

📌 Soluzione con funzione freccia

const isPalindromo = (parola) => { return parola === parola.split("").reverse().join(""); }; console.log(isPalindromo("radar")); // true

6. Sintesi concettuale

  • Le funzioni permettono di organizzare e riutilizzare il codice.

  • Possono avere parametri in ingresso e valori di ritorno in uscita.

  • Le funzioni freccia rendono la sintassi più compatta, ma hanno differenze con this.

  • Lo scope regola la visibilità delle variabili.

  • Applicazione pratica: controllo di palindromi.

Commenti

Post popolari in questo blog

Corso di Programmazione Strutturata e OOP: 3 Ereditarietà incapsulamento polimorfismo

Corso di CSS & Web Design: 3 – Box Model e spaziature

Corso di HTML: 11 Sviluppo completo di un sito