Измените мой фрагмент ruby, чтобы он больше не выглядел как C: method (method (param)) - PullRequest
0 голосов
/ 24 февраля 2011

У меня есть класс, который использует объект соединения для отправки данных запроса, созданных объектом request_builder.

Код выглядит следующим образом: connection.send_request(request_builder.build_request(customer))

Это в свою очередь вызываетсяbuild_report(customer, connection.send_request(request_builder.build_request(customer)))

Гадкий!Есть идеи, как сделать его более выразительным?Обычно в ruby ​​и OOP мы связываем объекты следующим образом: "string" .make_it_bigger.flash_it.send

Ответы [ 2 ]

1 голос
/ 24 февраля 2011

Это код, вот как это выглядит. Но вы можете сделать себе одолжение, не пытаясь собрать все в одну строку:

request = request_builder.build_request(customer)
response = connection.send_request(request)
report = build_report(customer, response)

если бы вы рассказали нам больше о своей кодовой базе, мы могли бы предложить что-то еще, но вы не дадите нам много на что продолжать Что делает объект request_builder? connection.send_request(...) возвращает ответ? Зачем отчету нужен клиент и ответ (при условии, что это то, что возвращается connection.send_request(...)) и т. Д.

1 голос
/ 24 февраля 2011
build_report(customer, request_builder.build_request(customer).send_over(connection))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...