Sobes.tech
Middle

Kā nodot nesasaistītus objektus funkcijai?

sobes.tech AI

Atbilde no AI

Tie var tikt pārraidīt kā atsevišķus argumentus vai iepakot datu struktūrā, piemēram, masīvā vai hash.

# Pārsūtīšana kā atsevišķi argumenti
def my_function(obj1, obj2)
  # ...
end

obj_a = Object.new
obj_b = Object.new
my_function(obj_a, obj_b)
# Pārsūtīšana masīvā
def my_function(objects)
  objects.each do |obj|
    # ...
  end
end

objects_arr = [Object.new, Object.new]
my_function(objects_arr)
# Pārsūtīšana hash'ā
def my_function(objects)
  objects.each do |key, obj|
    # ...
  end
end

objects_hash = { key1: Object.new, key2: Object.new }
my_function(objects_hash)

Metodes izvēle ir atkarīga no objektu skaita un mērķa, kā arī no vēlamās koda lasāmības. Masīvs vai hash ir ērti, ja ir daudz objektu vai tiem ir loģiska grupējuma.