Fの部屋

✍️ 学びのアプトプット ✍️ ... 🏕 たまに遊びも .... 🏕

変数名って重要だな~🤔

こんにちは😄プログラミングの学習中のFuushi−です🙇🏻‍♂️ まだまだ寒い日が続きていますが、皆様、いかがお過ごしでしょうか?

本日は僕の学習しているRubyに限らず、プログラミング言語では必須である概念「変数」について話になります。 記事で取り扱う変数はRubyで使う前提での書き方になります🙇🏻‍♂️

今回は

について書いていきます✍️

変数って何者?

変数とは、名前をつけて一時的に数字や文字などのデータ(オブジェクト)を記憶しておく格納庫のようなものです。 変数には種類があり、それぞれ、ローカル変数、インスタンス変数、クラス変数、グローバル変数、定数があります。 Rubyではこれらの変数の見分け方を変数名の先頭の文字を読み、種類の判断をしています。引用:UX MILK

「値段」「スポーツ」という名前のついた「箱」に「各値をいれる」感じです😄

変数に値を入れることを「代入する」といいます。 Rubyでは数値や文字列など値は「オブジェクト」と言われます。

変数を使うことのメリットなどは次の項目で書いていきます✍️

変数には「ローカル変数インスタンス変数クラス変数グローバル変数定数」の5つの種類があり、違いは「スコープ」と言われる「変数の有効範囲」です。

変数の種類によって使える範囲に違いがあるということです🤔違いを書くと長くなってしまう為、今回は省略します🙏

変数名の大切さ

「変数へ代入する」をコードで書くと

変数名 = 値(オブジェクト)

sport = ‘バスケットボール’
 #変数sportに文字列の‘バスケットボール’が代入されている。

表示させるには、putsメソッドなどの表示メソッドを使って表します✍️

sport = 'バスケットボール'
puts sport

《実行結果》
fushihara@fushiharayukinoMacBook-Air sample % ruby sample8.rb
バスケットボール

この変数が活躍する場面は、実際の開発の際の繰り返し使う値(オブジェクト)を多く使用する時です… 実際にちゃんとした開発をやったことがないので憶測ですが…😅

例えば、下記のようなコードがあったとします🤔

puts "好きなスポーツは" + "バスケットボールです"
puts "バスケットボール" + "が好きな理由はスラムダンクの影響です"

《実行結果》
fushihara@fushiharayukinoMacBook-Air sample % ruby sample8.rb
好きなスポーツはバスケットボールです
バスケットボールが好きな理由はスラムダンクの影響です

今回のコードでは「バスケットボール」という文字列があります。もし好きなスポーツを変更する場合は 2箇所変更する必要があります。

短いコードなので2箇所くらいならすぐに変更できますが、これが何百行、何千行とあるコードの中で 文字列の「バスケットボール」が何個も使われていたら、変更にどのくらいかかるでしょうか…😅

そこで変数を使うことで2箇所の変更が1箇所で済みます😄

sport = 'バスケットボール'
puts "好きなスポーツは" + sport + “です”
puts sport + "が好きな理由はスラムダンクの影響です"

《実行結果》
fushihara@fushiharayukinoMacBook-Air sample % ruby sample8.rb
好きなスポーツはバスケットボールです
バスケットボールが好きな理由はスラムダンクの影響です

変数sportを変更するだけで,2箇所とも変更されます✍️便利ですね😄

変数名を付ける時のポイント

最後に変数名を付ける時に意識することが書いていきます。 現在学習しているフィヨルドブートキャンプのオンランスクールで、コードレビューの際によく、変数名の命名について指摘をよくもらっていました🤔

単に英単語を知らなさすぎという問題はさておき…笑

代入される値のイメージがしっかりできる・意味が伝わる短い名を付けれるのが理想ではありますが、中々難しい場合もあると思います…多分😅

実際にFBC内でメンターの方々に質問してアドバイスをもらいました。

【アドバイス・意識すること】

  • 大事なのはプログラムが読みやすく、理解しやすいこと。プログラミングは読む事の方が書く方よりも遥かに多い。
  • 分かりやすさを意識して長くなってしまった変数名も「そもそも無駄な単語がくっつきすぎているので、もっとシンプルに直せる」ということが多い。
  • コードレビューする・されるを繰り返して、チーム内で徐々に「いい命名・悪い命名」を浸透させていく、というのも効果的である。
  • 命名はコードを通じた他人(コンピュータではなく人間)とのコミュニケーションの手段なので、一人で悩むよりも誰かと議論して落とし所を見つけるのがベスト。
  • プログラミング言語だとこういう風に略されることが多い」みたいな雰囲気があるので、組み込みクラス(Arrayとか)やRuby on Rails、標準ライブラリあたりのメソッド名、引数の名前、ソースコードの中身を見てみる。

などなど…✍️

まとめ

今回は

①変数って何者?

②変数名の大切さ

③変数名を付ける時のポイント

について書いていきました✍️

伝わる・分かりやすい変数名が付けれるようになれば,実際の開発業務でもプラスになるので,変数名はしっかり付けれるように意識していきたいと思いますし, 変数名がうまく思いつかなかったり迷った時は,開発のチームメイトやメンターに相談やアドバイスをもらっていきたいと思います😊

本日は以上です😄 ここまで読んで頂き、ありがとうございました🙇🏻‍♂️ ではでは👋 〜学びは人生を豊かにする✍️〜