Rubyの変数に対する考え方を学んだので少しだけ書いてみる
Rubyにおける変数の考え方と他言語の変数の考え方の違い
プログラミング言語を学ぶ時、変数の概念が出てきたら「変数とはデータを入れておく箱のようなもの」と書いてる。
でもRubyは変数という箱にデータを入れておくのではなく、データにラベル(名札)をつけておき管理するという考え方をするらしい。
Matzさんが言うには「矢印モデル」と呼んでるらしいです。
対してデータを箱に入れておくような考え方を「箱モデル」と言う。
箱モデルと矢印モデルの違いで起きる変化
test.rb
str1 = "hoge"
str2 = str1
"hoge"というデータを、str1という変数でラベル付けした時、そのまま変数str1をstr2という変数に利用したら、"hoge"というデータに2つの名札が付いてると考えるそうです。
対して箱モデルは、"hoge"というデータがあった場合、str1変数に"hoge"を格納し、変数str1を変数str2に利用すると、変数str2は変数str1の値をコピーして箱に格納してるそうです。
終わり
トンチンカンな事言ってるかもしれません
もっとRuby練習していきます!