Reasons to Build Ruby Methods with Keyword Arguments
Keyword Arguments make building and maintaining Ruby methods easier and clearer than normal method declaration.
Keyword Arguments in Ruby is one of the good things that my colleages tend to ignore by not using it. Despite that it doesn’t have any proper downside of using it and come with many good points.
It make method clearer at first glance.
This is obvious. I don’t have to look for source of method when I see the method being called at other places.
1
2
3
4
5
6
7
8
9
10
# normal initializer
class Post
def initialize(subject, body)
@subject = subject
@body = body
end
end
# you will have to find the above Class to understand just this line.
Post.new('hello', 'this is a msg')
compare to how Keyword Arguments work
1
2
3
4
5
6
7
8
9
10
11
12
# initializer with keywords
class Post
def initialize(subject:, body:)
@subject = subject
@body = body
end
end
# likely to understand the basic functionality at firstglance
Post.new(subject: 'hello',
body: 'this is a msg',
)
Better understanding error message.
Keyword Arguments methods provide better error message when thing gone wrong.
Default setter and required key
This is indeed useful, for you can quickly look at given params and understand what needs to be done almost immediately.