Sobes.tech
Junior

In cosa consiste la funzione di aggregazione in Ruby?

sobes.tech AI

Risposta dell'AI

La funzione di aggregazione in Ruby viene applicata a una collezione (ad esempio, un array o un hash) e la riduce a un singolo valore, utilizzando una logica di combinazione o calcolo definita.

Esempi di metodi di aggregazione:

  • sum: Calcola la somma degli elementi della collezione.
    [1, 2, 3, 4].sum # => 10
    
  • count: Conta il numero di elementi (o di elementi che soddisfano una condizione).
    [1, 2, 3, 2].count # => 4
    [1, 2, 3, 2].count(2) # => 2
    [1, 2, 3, 2].count { |x| x > 1 } # => 3
    
  • max/min: Trova l'elemento massimo/minimo.
    [1, 5, 2, 8].max # => 8
    [1, 5, 2, 8].min # => 1
    
  • reduce/inject: La funzione di aggregazione più flessibile, che applica un blocco all'accumulatore e a ogni elemento della collezione, restituendo il valore finale dell'accumulatore.
    # Somma usando reduce
    [1, 2, 3, 4].reduce(0) { |sum, number| sum + number } # => 10
    
    # Concatenazione di stringhe
    ['a', 'b', 'c'].reduce('') { |result, char| result + char } # => "abc"
    

L'essenza consiste nell'iterare sulla collezione e costruire o calcolare gradualmente un risultato finale, unico. Questo permette di elaborare in modo efficiente insiemi di dati e ottenere indicatori riassuntivi.