Rubyの開発者を目指し基礎を学んでいる初心者の私がつまづいたところを簡単にまとめてみました。
つまづいたところ(May 13 days)
- ハッシュ
- 配列オブジェクト
- while
ハッシュ
このスクリプトでのつまづきポイントは「post = {}」。なにこれ。。。いままでは「hash = {hoge: "huga"}, puts hash[:hoge]」みたいなのを勉強してきて、これは少し違うみたいです。変数としてpostを定義してそこに要素「key,value」を入れていくみたいです。(違かったらすみません。)
post = {} # ハッシュの宣言
#要素の追加
post[:hoge] = "huga"
post[:hoga] = "hugo"
puts post # => {:hoge=>"huga",:hoga=>"hugo"}
配列オブジェクト
このスクリプトでのつまづきポイントは二つ。「posts = []」と「posts << post」。[]を使って宣言とか定義するのがどうも腑に落ちません。そこにデータを詰め込むのが目的みたいです。例えばループで回す時とか、データ消えてしまうので配列を宣言してそこにpushしていくらしい。最終行の「posts << post」でpost[:hoge]とかpost[:huga]を(配列オブジェクトと呼ばれるらしい。。。)追加しましょうというやつ。正直難しいです。
posts = [] # 配列の宣言
#要素の追加
post[:hoge] = "huga"
post[:hoga] = "hugo"
posts << post
while文
このスクリプトでのつまづきポイントは「number += 1」。何に使うのかわからず試しにコメントアウトしたところ無限ループに。。。「number」が永遠に1なんで1+1にひたすら足される結果になりました。スクリプトの目的を知ることが大切みたいです。
sum = 0
number = 1
while number <= 10 do
sum += number
puts sum
#number += 1
end
さいごに
記事自体が読みにくいと思いますが。勉強するにあたり重要なことは"サンプルプログラムの目的抑えてあとは写経する"でした。頭を動かすのは泥沼にハマりそうというのと手を動かすことを仕事として行きたいわけで、体が動けば自然と頭もついてくるような気がします。 ↩