Readable Code: Stacking Tokens
Burdette Lamar
Posted on May 18, 2019
If a collection of tokens serves as a list, consider making it look like a list.
As an example I'll use Ruby's class method attr_accessor
, which accepts any number of arguments.
Unstacked:
attr_accessor :arity, :name, :original_name, :owner, :parameters, :receiver, :source_location, :super_method
Stacked:
attr_accessor \
:arity,
:name,
:original_name,
:owner,
:parameters,
:receiver,
:source_location,
:super_method
Much more readable, no?
Note: For a user-defined method that accept many arguments, stacking may not be the best option. Consider instead whether such a method should accept an object.
Nevertheless:
def initialize(
name:,
address:,
phone:,
date_of_birth:,
debit_card_number:,
debit_card_pin:,
)
end
Another stack-worthy notation:
%w/
apple
banana
orange
peach
persimmon
pineapple
scuppernong
tomato
/
And of course pretty much everyone already does this:
{
:cabbages => 0,
:cucumbers => 2,
:peas => 200,
:potatoes => 4,
:radishes => 8,
:sweet_potatoes => 0,
}
Others? In Ruby? Or in another language?
π πͺ π
π©
Burdette Lamar
Posted on May 18, 2019
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.