Che cos'è la programmazione funzionale?

Concetti dei paradigmi di programmazione

Eleanor Thomas

Senior Data Analytics Engineer

Che cos'è la programmazione funzionale?

  • Programmazione funzionale: paradigma che usa funzioni, in particolare funzioni pure
  • Funzioni pure: prendono input, producono output solo in base a quegli input e non fanno altro
  • La separazione delle responsabilità si ottiene tramite funzioni

Input, Processing, Output

Concetti dei paradigmi di programmazione

Che cos'è una funzione pura?

  • Il concetto di funzione pura nella programmazione funzionale viene dalla matematica
  • Le funzioni pure guardano solo l'input e producono solo l'output
  • Le funzioni pure non hanno effetti collaterali
  • Niente effetti collaterali significa:
    • Nessuna influenza su altre variabili del programma
    • Nessuna scrittura su file
    • Nessun salvataggio su database
Concetti dei paradigmi di programmazione

Esempio di funzione pura

Funzione pura

def pure_sum(x, y):
    output = x + y

    return output

Non pura

def not_pure_sum(x, y):
    output = x + y

    print(output)

    return output
Concetti dei paradigmi di programmazione

Vantaggi delle funzioni pure

  • Le funzioni pure sono più facili da capire e fare debug
  • Testare le funzioni pure è più semplice
  • L'output per un dato input è del tutto prevedibile
    • Come in matematica: 5 al quadrato è sempre 25

Input, Output

Concetti dei paradigmi di programmazione

Passiamo alla pratica !

Concetti dei paradigmi di programmazione

Preparing Video For Download...