オブジェクト指向とは
オブジェクト指向とは、プログラムを構成するための考え方です。 オブジェクト(もの)同士の相互作用とみなします。- リモコンでテレビを操作するイメージ
- 自動車というオブジェクトを作りたい場合、ガソリンやブレーキなどの要素が必要です。また、具体的にどのタイミングでブレーキをかけるか、どれくらいの速度で構成するのか、などの命令を加えることで、「モノを動かす」ことができます。
Rubyのオブジェクト指向
Rubyはオブジェクト指向型の言語です。-
「従来の複雑で難しいプログラミング言語を効率的なソフトウェア開発のために考えられた概念」となります。
-
「モノ」のことでさまざまな複雑なデータを1つのモノとし、複雑なプログラミングをオブジェクトにまとめた開発形式です。
Rubyにおけるオブジェクトの種類
Rubyのデータは、全てがオブジェクトです。オブジェクトにはさまざまな種類があります。代表的なものは以下の通りです。
- 数値オブジェクト
- 文字列オブジェクト
- 配列オブジェクト
- ハッシュオブジェクト
オブジェクト指向の使い方
Rubyでオブジェクト指向を使うには、以下の重要な3つの概念を理解する必要があります。
- クラス
- インスタンス
- メソッド
クラス
クラスとは、オブジェクトの設計図のことです。全てのオブジェクト指向は何らかのクラスに属しています。オブジェクト指向は役割と命令がなければ、自分で動けません。- オブジェクトで「たい焼き」を作りたい場合、たい焼きの形を作る「たい焼き器」(設計図)になる
インスタンス
インスタンスとは、クラスを具象化したものです。クラスという設計図を元にして、製造されたものがインスタンスです。- クラスが「たい焼き器」だとすると、インスタンスは「たい焼き」となります。
メソッド
オブジェクト指向でのメソッドとは、クラスに命令する動作のことです。- たい焼きでいうと「味」や「値段」の情報をクラスに命令する動作。
オブジェクト指向のメリット
オブジェクト指向には、さまざまなメリットがあります。大別して、以下の3つです。- プログラムの安全性が高い
- プログラムの再利用が高い
- プログラムをテストしやすい
参考記事
オブジェクト指向
https://www.sejuku.net/blog/124336
【Ruby】 たい焼きで理解するオブジェクト指向におけるクラスの概念
https://pikawaka.com/ruby/class