Size: a a a

2020 April 06

AI

Alex Ilizarov in pro.ruby
Иначе все это крайне сложно в отладке и дебаге
источник

AI

Alex Ilizarov in pro.ruby
И тест на каждый конкретный класс. Иначе будешь огребать
источник

AI

Alex Ilizarov in pro.ruby
Композицией класс собирай, и тесты композицией можно.
источник

PK

Pavel Kvasnikov in pro.ruby
акварель на мету
ну для каждого парсера класс создаю
они отличаются только парой функций и конструктором в котором только одна переменная меняется
Почему нельзя сделать просто include с нужной логикой?
источник

а

акварель на мету in pro.ruby
Pavel Kvasnikov
Почему нельзя сделать просто include с нужной логикой?
я так и делаю
источник

AI

Alex Ilizarov in pro.ruby
акварель на мету
я так и делаю
Дык ты выше Class.new do делал )
источник

AI

Alex Ilizarov in pro.ruby
Это и потенциальные утечки и в целом геморой для поддержки
источник

а

акварель на мету in pro.ruby
Alex Ilizarov
Дык ты выше Class.new do делал )
и в нем инклуд
источник

а

акварель на мету in pro.ruby
источник

AI

Alex Ilizarov in pro.ruby
акварель на мету
и в нем инклуд
А почему просто норм класс не сделать? И вместо make_parser будет choose_parser условно
источник

AI

Alex Ilizarov in pro.ruby
Ты ща себе зскладываешь очень большой геморой на будущее, или даже ближайшее
источник

а

акварель на мету in pro.ruby
Alex Ilizarov
А почему просто норм класс не сделать? И вместо make_parser будет choose_parser условно
потому что код увеличится в 4 раза
а так — оно срабатывает как темплейты в плюсах
источник

AI

Alex Ilizarov in pro.ruby
акварель на мету
потому что код увеличится в 4 раза
а так — оно срабатывает как темплейты в плюсах
А темплейты в плюсах тоже геморой
источник

AI

Alex Ilizarov in pro.ruby
Ты типа дженерики строишь
источник

AI

Alex Ilizarov in pro.ruby
Но тут имхо лучше в 4 раза больше кода, но нормальные тесты и стектрейсы
источник

AI

Alex Ilizarov in pro.ruby
Строить дженерики без статических гарантий имхо так себе идея, но мысль вроде уловил
источник

AI

Alex Ilizarov in pro.ruby
Огребать или нет, решать тебе. Надеюсь это код твоего пет проекта, потому что на работе я бы не стал подкладывать такую свинью коллегам.
источник

AI

Alex Ilizarov in pro.ruby
Чем проще и тупее тем часто лучше.
источник

PK

Pavel Kvasnikov in pro.ruby
def klass_maker(class_name, params)
klass = "
class #{class_name}
 include SomeModule

 def initialize(#{params})
   @#{params[:var_name]} = #{params[:var_value]}
 end
end
"
end
источник

PK

Pavel Kvasnikov in pro.ruby
раз уж такая пляска
источник