【Ruby入門】オブジェクトとは?オブジェクト指向で設計や開発する理由【#3】


こんにちは。Tomoyuki(@tomoyuki65)です。

オブジェクト指向のプログラミング言語といえばJavaですよね。

その他、Rubyもオブジェクト指向のプログラミング言語で、扱えるすべての値がオブジェクトという特徴があります。

 

「でもオブジェクトってなんだかよくわからない」

って方も多いのではないでしょうか?

 

でもオブジェクトは、図やたい焼きで表すとわかりやすいんです。

 

この記事では、そんなオブジェクトについて解説します。

 



『オブジェクト』を理解しよう!

オブジェクト(指向)とは?

まず『オブジェクト』を日本語で表すと『物体』です。

つまり、Rubyで扱える全てのデータ(数値、文字列、時刻など)は何らかの『物体』であると言えます。

 

また『オブジェクト指向』とは、ソフトウェア設計や開発における考え方の一つです。

 

オブジェクトが何らかの役割(メソッド)を持ち、命令を実行することが出来るという考え方です。

 

※オブジェクト指向には、クラス、インスタンス、継承などの概念があります。

 

つまり、数値や文字列などのオブジェクトはメソッドを実行できます。

例えば、以下のプログラムを実行してみて下さい。

# 数値「3.14」を四捨五入するメソッド「.round」
puts 3.14.round
# 文字列「"Hello World !"」の文字数を返すメソッド「.length」
puts "Hello World !".length

 

実行結果
3
13

 

このように、オブジェクト指向プログラミングでは、オブジェクトは何らかのメソッド(役割)を持ち、それらを実行することで様々な処理をさせることができます。

また、オブジェクトには色々な種類があり、それらの種類をクラスと呼びます。

 

クラスとインスタンス

オブジェクトの種類を『クラス』といい、オブジェクトは何らかのクラスに属しています。

例として、数値であれば「Integer」や「Float」クラス、文字列であれば「String」クラスです。

 

では、以下のプログラムを実行してみて下さい。

各オブジェクトが属しているクラスを確認することができます。

# 数値「10」のクラスを確認
puts 10.class
# 数値「3.14」のクラスを確認
puts 3.14.class
# 文字列「Hello World !」のクラスを確認
puts "Hello World !".class

 

実行結果
Integer
Float
String

 

クラスはよく設計図のようなものと例えられ、クラスはオブジェクトがどのようなものかを定義します。

また、それらクラスを具象化したものを『インスタンス』と呼びます。

つまり、全てのオブジェクトは何らかのクラスのインスタンスであるとも言えます。

 

図のように、クラスやインスタンスはよくたい焼きに例えられます。

 

オブジェクト指向で設計や開発をする理由

ここまでオブジェクトについて簡単に説明してきました。

ではなぜオブジェクト指向で設計や開発をする必要があるのでしょうか?

 

それは、プログラムの変更に対して柔軟に対応するためです。

 

プログラムは常にアップデートしていかなければ、時間の経過と共に腐敗していきます。

つまり、アプリケーションは開発して終わりではなく、保守していく必要があります。

プログラムには変更する可能性が低い部分と高い部分があり、低い部分をベースとして、高い部分をうまくクラスにすることで、変更に柔軟に対応できます。

 

たい焼きで表すと、タイ焼き器一つに対して、様々な具のたい焼きを作ることができます。

 

まとめ

  •  Rubyでは扱える全てのデータはオブジェクト
  •  オブジェクトは何らかのメソッドを持ち、様々な処理をすることができる
  •  オブジェクトの種類をクラス、クラスから具象化したものをインスタンスと呼ぶ
  •  どのようなオブジェクトかはクラスに定義する
  •  プログラムの変更に対して柔軟に対応するため、オブジェクト指向で設計開発する

 

  •  関連記事

オススメのRuby入門サイトはどれ?Rubyの学習方法をまとめる

2017.10.24

 

The following two tabs change content below.
Tomoyuki

Tomoyuki

2018年1月1日に開業したプロブロガー1年目です。 元EBSエンジニア(SE)で、今はブログ運営とゲーム配信をしています。 Rubyを中心としたWeb開発情報や仮想通貨について情報発信中です!








シェアありがとうございます、


時代の変化とともに、多様な生き方へ

仕事がAIや自動化で無くなっていく時代を生き抜くために、
モノ創りと多様な生き方を示します。



ビットコインを買うならZaif取引所がおすすめ!

Zaif取引所は他の主要取引所と比べて手数料が安いのが特徴。
ビットコインの他、イーサリアム、モナーコイン、ネムも購入可能です。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です