Какое имя лучше? is_spam! и make_spam?

#ruby

#ruby

Вопрос:

Я видел презентацию http://essential-rails-pattern.heroku.com/#23 (на китайском языке)

и это описывает метод, вызываемый is_spam! для изменения чего-либо на спам.

Мой вопрос в том, является ли make_spam! оно лучшим?

Комментарии:

1. @OscarRyz пример: у меня есть сообщение, и я хочу изменить статус сообщения на спам, я хочу написать метод, который будет вызываться. post.is_spam! или post.make_spam! изменит статус сообщения на спам.

Ответ №1:

Ммм…. Я полагаю, это несколько субъективно, но, учитывая, что большинство методов в ruby, которые начинаются с is (но обычно заканчиваются ? ), возвращают логическое значение, я полагаю, я согласен; make_spam! лучше. Мне все равно не очень нравятся методы изменения…

По соглашению я лично назвал бы это to_spam! .

Ответ №2:

Как насчет просто спама! ? The ! уже подразумевает модификацию, поэтому он гласит «изменить на спам», тогда у вас может быть спам? также.

Ответ №3:

Почему не «markAsSpam!» ? «makeSpam!» заставляет меня думать, что вы превращаете существующий текст в спам.

Комментарии:

1. Спасибо, но мне интересно markAsSpam! , правильно ли это. Я имею в виду, насколько я знаю, в ruby это должно быть mark_as_spam! , верно?

2. camelCase vs подчеркивания — это вопрос соглашения: вы должны соответствовать остальной части кодовой базы. Я просто думал о значении слов.