Middle
Come si possono passare oggetti non collegati tra loro a una funzione?
sobes.tech AI
Risposta dell'AI
Possono essere passati come argomenti separati o impacchettati in una struttura dati, ad esempio un array o un hash.
# Passaggio come argomenti separati
def my_function(obj1, obj2)
# ...
end
obj_a = Object.new
obj_b = Object.new
my_function(obj_a, obj_b)
# Passaggio in un array
def my_function(objects)
objects.each do |obj|
# ...
end
end
objects_arr = [Object.new, Object.new]
my_function(objects_arr)
# Passaggio in un hash
def my_function(objects)
objects.each do |key, obj|
# ...
end
end
objects_hash = { key1: Object.new, key2: Object.new }
my_function(objects_hash)
La scelta del metodo dipende dal numero e dallo scopo degli oggetti, nonché dalla leggibilità del codice desiderata. Un array o un hash sono utili quando ci sono molti oggetti o hanno un raggruppamento logico.