Size: a a a

Saint P Ruby Community

2020 January 13

A

Alex in Saint P Ruby Community
потому, что это goto
источник

DB

Dmitry Batracov in Saint P Ruby Community
wi11son
начнем с того, что самый известный — это method_missing, но еще inherited
Помнится мне inherited раз в жизни напедалил, побыл этот код месяц в проде, потом переписал. ( F )
источник

w

wi11son in Saint P Ruby Community
Alex
потому, что это goto
ну Signal это как раз тот случай, когда goto и нужен
источник

NS

Nikita Shilnikov in Saint P Ruby Community
at_exit
источник

A

Alex in Saint P Ruby Community
wi11son
ну Signal это как раз тот случай, когда goto и нужен
в общем согласен, но это исключительно редкий случай, в повседневной жизни ruby разработчика goto является индикатором того, что с дизайном что-то не так
источник

SM

Sergei Maximov in Saint P Ruby Community
Alex
потому, что это goto
Он goto в той же мере, что и raise/resque. Ну и goto для данного юзкейза не является в общем случае чем-то злым.
источник

A

Alex in Saint P Ruby Community
какой юзкейз "данный"?
источник

IN

Ilya Nikolaevich in Saint P Ruby Community
классно, узнал что в руби есть гото
источник

A

Alex in Saint P Ruby Community
> той же мере, что и raise/resque
Это не так. А если вы используете исключения для управления потоком выполнения программы, то у меня плохие новости для вас:)
источник

IN

Ilya Nikolaevich in Saint P Ruby Community
за 12 лет ни разу ни в одном проекте не встречал
источник

IM

Igor Morozov in Saint P Ruby Community
Alex
> той же мере, что и raise/resque
Это не так. А если вы используете исключения для управления потоком выполнения программы, то у меня плохие новости для вас:)
а как транзакции в активрекорде и сиквеле запилены? 🤔
источник

SM

Sergei Maximov in Saint P Ruby Community
Alex
какой юзкейз "данный"?
Быстро и дёшево выйти из глубокой вложенности control structures/stack frames
источник

A

Alex in Saint P Ruby Community
это плохой способ быстро выйти из стека глубокой вложенности
источник

AD

Anton Davydov in Saint P Ruby Community
Ilya Nikolaevich
за 12 лет ни разу ни в одном проекте не встречал
Пару раз делал его, что бы из рекурсии выйти
источник

AD

Anton Davydov in Saint P Ruby Community
Было так себе, но работало
источник

SM

Sergei Maximov in Saint P Ruby Community
Ilya Nikolaevich
классно, узнал что в руби есть гото
Ещё раньше можно было ограниченный goto запилить на call/cc, но сейчас он вроде задепрекейчен
источник

A

Alex in Saint P Ruby Community
Igor Morozov
а как транзакции в активрекорде и сиквеле запилены? 🤔
А это как-то легитимизирует использование исключений для контроля над потоком выполнения?)
источник

IM

Igor Morozov in Saint P Ruby Community
Alex
А это как-то легитимизирует использование исключений для контроля над потоком выполнения?)
ну эта штука либо работает нормально, либо нет 🤔
источник

IN

Ilya Nikolaevich in Saint P Ruby Community
Anton Davydov
Было так себе, но работало
я вообще за всю свою жизнь гото в реальном проекте видел только 2 или 3 раза.
Главный пример был в математическом софте. Там какая-то хитрая ситуация была и мне мне объяснили, что только гото обеспечивает чистоту кода и быстродействие.
Но я уже ничего не помню об этом. Ни языка, ни конкретной ситуации.
Но в тот момент я согласился, что да, без гото решить задачу будет крайне сложно. И вероятно медленнее.
Так что верю что гото может быть крайне полезным инструментом, но в супер редких случаях
источник

ЕЗ

Евгений Зубаиров in Saint P Ruby Community
Anna Razumova
Привет всем) меняю тут работу, 100 лет на собесах не была, какие темы чаще всего спрашивают у миддлов?
Я просто про опыт болтаю на собесах.
Если есть хоть какой гитхаб, то по проектам вопросы задаю.
Ну и мб какую-нибудь задачку простую на подумать, без написания кода.
Остальное все равно только уже начав работать будет видно.
источник