2014-02-07 3 views
0

Так что это немного упрямый вопрос, но кто-то смотрел на мой код Rails (в частности, на код модели), и он задумывался о том, как я называю локальные переменные.стандартное соглашение о присвоении имен локальным переменным Rails

Чтобы быть честным, из-за того, что Ruby работает, я намеренно не называю то, что может выглядеть как атрибут, и часто называет их чем-то вроде id_tmp, так как id легко может быть атрибутом. Он чувствовал, что это было очень мучительно, а кто прав?

как в User.rb

class User < ActiveRecord::Base 
    ... 
    def say_something 
    # my verion which I prefer but not super emphatically 
    location_ids_tmp=Location.getAssociatedIds 
    # his version which he prefers greatly but the more I think about it, the less I like 
    location_ids=Location.getAssociatedIds 

Я не обиделась, но это был типичный программист аргумент где я не могу получить его из головы.

Кто такой? Или это должен быть аргумент, основанный на контексте?

ответ

0

Ваша интуиция, что вы не хотите называть переменную после ключевого слова, такого как class, id и т. Д. Правильно. Однако вам не нужно это делать, если имя переменной включает в себя что-то вроде location_. location_ids более идиоматично, я бы сказал. Но никакое имя переменной не столкнется с зарезервированным ключевым словом, если у вас есть что-то добавленное или добавленное.

+0

THX для ответа. если у пользователя has_many: местоположения, тогда у пользователя есть атрибут location_ids. Я думаю, если вы увидите location_ids в модели, я задаюсь вопросом, существует ли такая связь. Просто кажется, что более откровенно сказать location_ids_tmp или что-то в этом роде. В контексте локальной переменной вам не понадобится самосознание. Я знаю, что это прежде всего стилистическая конвенция, но ... – timpone

Смежные вопросы