Логическое соглашение с префиксом has в Ruby - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть класс под названием Order. Заказ может быть или нет, таможня должна быть оплачена (например, для перевозки по всему миру). Я думаю, что логическое значение имеет has_customs. Является ли хорошей практикой называть логическое значение с префиксом has в Ruby / Rails?

Ответы [ 2 ]

3 голосов
/ 08 апреля 2019

Я бы посоветовал вам придерживаться стиля руководства RuboCop: https://github.com/rubocop-hq/rubocop

Для соглашения о булевых именах рекомендуется удалить все префиксы (например, has_ is_ ...) но завершить его знаком вопроса ?. Так что в вашем случае это будет customs?

Вот соответствующие документы: https://docs.rubocop.org/en/latest/cops_naming/#namingpredicatename https://github.com/rubocop-hq/ruby-style-guide#bool-methods-qmark

2 голосов
/ 08 апреля 2019

has_foo? в порядке. Например, у класса Hash есть экземпляр_метода has_key?. Вы всегда должны добавлять вопросительный знак к имени метода, если этот метод возвращает true или false.

...