40代のおっさんが、何の知識もない状態から始めております
プログラミング学習。言語はRuby
いわずと知れた日本人により開発された言語で、日本人にとっては
とっつきやすい言語とされています。
そんな理由から始めてみたものの…
まぁ突っかかりますよね(汗)
初めに選んだ参考書が、わかりやすくシンプルに書かれているのはいいのですが
ところどころ端折られているような気がして…
現在使用している参考書がこれなのですが、
この本の一番の特徴は、キャプチャー毎に練習問題が用意されており
学んだことを文章から導き出し、コードを書くという
考えてアウトプットできる機会があるため、非常にためになるとは思っています。
ですが、その中でちょこちょこと”?マーク”が浮かぶようなシーンが…
例えばですが、
menu = {“コーヒー” => 300, “カフェラテ” => 400}から、全キーを持つ配列
[”コーヒー”, “カフェラテ”]を作ってください。
とあります。
解答例として
menu = {“コーヒー” => 300, “カフェラテ” => 400}
keys = []
menu.each_key do |key, value|
keys.push(key)
end
puts keys
と書いてあります。
まず keys = [] ← これはどこにも解説がありません。
おそらくkeys という変数の中に何かを代入するという発想なのでしょうが…
また
menu.each_key do |key, value|
この行についても each_key do というメソッドが急に現れたためパニックです。
each do はよく出てきてすべて代入するといったニュアンスなんで
その観点から行くとkey(コーヒーとカフェラテ)のすべてを代入するといったイメージなのでしょうか…
でもそうなると |key, value|の意味が理解できません…
さらに言うならば
keys.push(key) この部分は一つも理解できませんでした…
push は末尾に追加するメソッド
keysに追加する…急に!?
しかもpush(key)の(key)って何!?
存在自体が意味不明です…
なるべくやった部分は理解してから次に進みたいと思っていたのですが
ここで完全につまずきました…orz
もしかしたらこの先にこの部分の解説が出てくるかもしれないので
とりあえず前に進んでみることとします…
誰か詳しく解説できる方いませんか( ノД`)シクシク…