プログラミングの世界

「メソッド」プログラミング自宅学習【簡単誰でも出来ます】

「メソッド」プログラミング自宅学習【簡単誰でも出来ます】

プログラミング言語Ruby(ルビー)を使った「メソッド」について説明していきます
わたしも自宅学習でプログラミングを身に付けました 
初めは私になんてと思っていましたが
始めると本当に楽しくって プログラミングは記憶学習では無く理解学習です
言語の使い方さえ理解出来れば 後は慣れるまでコピーペーストで作業が進められるので 英会話よりも簡単に獲得できる上に仕事にも生かせるという素晴らしいスキルの1つです 頑張って繰り返し学習をする事で自宅でもスキルの獲得が可能です

メソッドとは

メソッドは色々な処理をひとつにまとめて定義して、何度も再利用(実行)できるようにしたものです
繰り返し同じ処理を出力させたい時に 同じ処理を繰り返し作れば勿論出力されますが それだと面倒だし なにより変更したい時はまた全て変更しなくてはなりませんよね そんな手間をメソッドを使う事で簡単にしてくれるんです

Rubyのメソッド定義は、defとendの間に、実行したい処理を入れます

記入例
def メソッド名
間にメソッドが呼び出された時の処理を記入
end
 

呼び出す時はこれまでのputsを使わなくてもメソッド名だけで呼びだせます

記入例 表示例
def profile
  puts “こんにちは”
  puts “私はあんずです”
 puts “大阪出身です”
end

profile
こんにちは
私はあんずです
大阪出身です
 

メソッドに引数を加える

引数(ひきすう)とはメソットに対しいて更に情報を追加する事を言います
「def メソッド名(引数名)」とすることで、引数を指定することができます
そしてメソットの外で「メソッド名(“引数名”)」引数に入れる値を指定します
勿論引数には数値も指定できます その場合は数値なのでクォーテーションは要りません

 

記入例 表示例
def profile(name)
 puts “こんにちは”
 puts “私は#{name}です”
end

profile(“あんず”)
こんにちは
私はあんずです

メソッドは繰り返し同じ処理を出力させるのに便利と言いましたがこの引数と#{引数名}【変数展開 】を使う事で 同じ文章にバリエーションを加えて何度も引き出す事が出来ます

#{引数名}【変数展開 】に関して解らない方はこちらの記事をご覧下さい
プログラミングRuby(ルビー)の基礎言語

記入例 表示例
def profile(name)
 puts “こんにちは”
 puts “私は#{name}です”
end

profile(“あんず”)
profile(“ほのか”)
profile(“ことみ”)
こんにちは
私はあんずです
こんにちは
私はほのかです
こんにちは
私はことみです
 

メゾットを使わない時の記入例
puts “こんにちは”
puts “私はあんずです”
puts “こんにちは”
puts “私はほのかです”
puts “こんにちは”
puts “私はことみです”
 

更に増やしたい時これまでの出力方法では大変ですが メソッドを利用すればメソッド名(引数名)」を追加するだけで複数の処理を行ってくれます

メソッドを定義するときに用意した引数は、そのメソッドの中(defからendまでの間)でしか使うことができません

引数はコンマ(,)で区切る事で複数付ける事が可能です

記入例 表示例
def profile(name,address)
 puts “私は#{name}です”
 puts “出身は#{address}です”
end

profile(“あんず”,”大阪”)
私はあんずです
出身は大阪です
 

複数の引数を付ける場合 後で解かりにくくなる事もあるので 引数にキーワードを付けて認識しやすくする事ができます それをキーワード引数といいます引数名の語尾にコロン(:)を付けます

記入例
def profile(name:,address:)
 puts “私は#{name}です”
 puts “出身は#{address}です”
end

profile(name:”あんず”,address:”大阪”)
 

メソッドの戻り値とは

メソッドではメソッド内で処理を行いその値を返す「戻り値」というのがありこのことを「メソッドが戻り値を返す」と言います
「return 値」と書くことで、メソッドはその値を戻り値として返します
戻り値を表示させるには「return 値」を代入させる必要があります

記入例 表示例
def number(a,b)
return a + d
end

value = number( 3 , 5 )←代入する

puts value
8
 

メソッドで条件式return更にif文を使う

少し複雑になってきますが メソッドの中にreturnを指定してif文を使うと戻り値にif文のように真偽値(trueまたはfalse)を受け取る事が出来ます 真偽値を返すメソッドは、メソッド名の末尾に「?」を付けます

if文に関して解らない方はこちらの記事をご覧下さい
プログラミングRuby(ルビー)の基礎言語

「def メソッド名?(引数名)」と指定し呼び出す時は「if メソッド名?(引数名)」とします
下の例題ではreturnにprice >= 5000(5000より大きければ)と戻り値を指定します

記入例
def shipping_free?(price)
  return price >= 5000←今回は5000より大きければと指定
end

if shipping_free?(3000)←今回は引数名3000と指定
 puts “5000円以上のお買い上げなので送料はいただきません”
else
 puts “追加で送料をいただきます”
end
 

指定した条件をクリアー出来なかったので
if文の成り立たなければ「false」が適用されました

表示例
追加で送料をいただきます

もしも引数名の値を変えて条件をクリアーにすると
if文の成り立つ事を「true」が適用されます

記入例
def shipping_free?(price)
  return price >= 5000
end

if shipping_free?(6000)
 puts “5000円以上のお買い上げなので送料はいただきません”
else
 puts “追加で送料をいただきます”
end

表示例
5000円以上のお買い上げなので送料はいただきません

メソッドを利用する事でその後の処理がとってもシンプルになるので頑張って下さい

ABOUT ME
あんず
大阪在住のあんずです 二十代で全身性エリテマトーデス(SLE)と診断され紫外線を避け夜行性に その頃自宅で出来るアフェリエイトを独学し生活費を賄っていましたが 人との繋がりが恋しくなり 夜外勤するようになりました 最近になりまたこの世界に戻って来ましたが SEO等全てが新しくなっていて浦島太郎状態でしたが 1から勉強し直しまた収益化できるように そのノウハウを無料公開していきます 【スキル】 アフェリエイト/ブログ運営/プロミラミング