Sobes.tech
Middle

Ako možno odovzdať nesúvisiace objekty do funkcie?

sobes.tech AI

Odpoveď od AI

Môžu byť odovzdané ako samostatné argumenty alebo zabalené do dátovej štruktúry, napríklad poľa alebo hash.

# Odovzdanie ako samostatné argumenty
def my_function(obj1, obj2)
  # ...
end

obj_a = Object.new
obj_b = Object.new
my_function(obj_a, obj_b)
# Odovzdanie v poli
def my_function(objects)
  objects.each do |obj|
    # ...
  end
end

objects_arr = [Object.new, Object.new]
my_function(objects_arr)
# Odovzdanie v hashi
def my_function(objects)
  objects.each do |key, obj|
    # ...
  end
end

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

Voľba metódy závisí od počtu a účelu objektov, ako aj od požadovanej čitateľnosti kódu. Pole alebo hash sú vhodné, keď je veľa objektov alebo majú logickú skupinu.