У меня есть класс в работнике Sidekiq, у которого есть блоки кода, которые я бы хотел переместить в отдельные файлы для организационных целей. Как мне это сделать?Правильный способ организовать блоки кода внутри класса?
# /app/workers/pull_data_worker.rb
class PullDataWorker
include Sidekiq::Worker
def perform(account_id)
account = Account.find(account_id)
# Chunk A
# block of code that does something
# Chunk B
# block of code that does something
# Chunk C
# block of code that does something
end
end
Каждый из этих «кусков» представляет собой всего лишь несколько блоков кода, которые обрабатывают некоторые данные. Это не методы. Просто основные вещи, которые охватывают некоторые данные, извлекаемые из разных сторонних API.
Итак, как правильно их разделить?
Running Ruby 2.0.0 on Rails 4.0.1 Приложение.
Почему вы не делаете частные методы для каждого блока? –
У вас есть дублирование этого же блока кода у других работников? – usha
@ Vimsha Нет. Это скорее «святое дерьмо, код в этом файле становится безумно длинным, я бы хотел разделить его на более мелкие куски». – Shpigford