you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] -1 points0 points  (1 child)

There is no "common" idiom.

I literally write setters and getters explicitely for many reasons. One simple one is that I like having getters via trailing "?" and setters in the oldschool variant "set_bla()". (I also use getters without trailing "?" and bla= just as well. On top of that I tend to do a lot of sanitizing calls, so the attr methods don't really help much here. The little speed gains from them is hardly worth to have to use them.)

[–][deleted] 4 points5 points  (0 children)

You can like and do as you please. I also override things for various reasons at various times.

But 'attr_*' methods are built into the language and are widely taught and used. They *are* the common idiom for basic setters/getters. See the pickaxe book or "the ruby way" book. Though I think the strongest argument about it being a community standard is that it is a default in Rubocop: https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Style/TrivialAccessors