Sobes.tech
Middle

¿Cómo se pueden pasar objetos no relacionados entre sí a una función?

sobes.tech AI

Respuesta de la IA

Se pueden pasar como argumentos separados o empaquetarlos en una estructura de datos, por ejemplo, un array o un hash.

# Pasar como argumentos separados
def my_function(obj1, obj2)
  # ...
end

obj_a = Object.new
obj_b = Object.new
my_function(obj_a, obj_b)
# Pasar en un array
def my_function(objects)
  objects.each do |obj|
    # ...
  end
end

objects_arr = [Object.new, Object.new]
my_function(objects_arr)
# Pasar en 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 elección del método depende de la cantidad y el propósito de los objetos, así como de la legibilidad del código deseada. Un array o un hash son convenientes cuando hay muchos objetos o tienen una agrupación lógica.