プログラミングをしていくと、オブジェクト指向という言葉が出てきます
オブジェクト指向は「概念」なので、明確にこれ!という定義がありません。そのためとっつきにくさを感じる場合が多いです
ざっくり、オブジェクト指向とは何か?
オブジェクト指向プログラミングは、プログラムを手順出なく、ものの作成と操作として捉える考え方です
テレビをつけるプログラムを書くのではなく、リモコンというモノを作る。それを使う、という風に捉える・・・。ような感覚
何がいいのか?
例えばAA車は赤い色で、Xボタンを押すとバックして
BB車は青色でYボタンを押すとバックする
というように1つ1つ作って設定すると、必要な分だけ新しく作る必要があり手間です
別々に作るのではなく、「車」というものを作っておいて、必要な分だけコピーしてカスタマイズしていく方が楽です
複数人で開発したり、同じようなものを作る時楽ができます
オブジェクト指向で出てくる基本用語
オブジェクト | データと処理の集まり(実体) | 例えば設計書に基づいて作られた車
この車そのものがオブジェクトに当たる |
クラス | 設計書 | 車種や排気量などの個別データ&走る・止まるなどの操作のデータなど
オブジェクトを作り出すために必要な情報 |
プロパティー | オブジェクトが持っている属性を表す | メーカー・車種・排気量など詳細情報 |
メソッド | 処理のこと | 走る・止まる・曲がるなど、何かしらのアクション(振る舞い)のこと |
インスタンス化 | 設計書からオブジェクトを作ること | 実際に処理を実行してプログラムを走らせた時のことをいう |