ワタタク
今回の記事の目的はProcessingの「オブジェクト指向」を理解すること。
目次
【Processing】オブジェクト指向について
インスタンスについて
- オブジェクト指向は英語でObject Oriented Programming(OOP)
- 「oriented」は、特定の方向に向けられたという意味がある。モノ指向のプログラミング
- 指向=する事が初めからその方向を指して向かうこと
- 家造りに例えると、設計図、部屋の名前、部屋の動作などを設定し、家を完成させるまでの工程をオブジェクト指向という
- オブジェクト指向のプログラミング言語はJava,C#Python、Ruby、PHP、Processingもオブジェクト指向を使ってプログラムを書くことができる
- なぜオブジェクト指向というのか
- 「オブジェクト指向」という名前は、プログラミングの中心的な概念が「オブジェクト」であることが由来。
- オブジェクト指向プログラミング(OOP)は、データとそのデータに関連する動作を一つの単位(オブジェクト)として扱う
- この方法では、プログラムを小さな「オブジェクト」に分割し、それぞれのオブジェクトがデータ(属性)とメソッド(動作)を持ちます。これにより、プログラムをより直感的に理解しやすく、管理しやすくすることが可能になる
※メソッドについては後述
【Processing】オブジェクト指向と合わせて理解しておきたい6つの知識
Processingでオブジェクト指向を使って家を建てる場合に例えて、オブジェクト指向と必要になる6つの知識を解説。
- クラス(家の設計図のようなもの)
- コンストラクタ(家を建てるときの初期設定や手順のようなもの)
- フィールド(家の中にある部屋の種類とか名前)
- メソッド(家の中にある部屋の動作・機能)
- インスタンス・またはオブジェクト(家が完成して形になる)
- オブジェクト指向(クラス、コンストラクタ、フィールド、メソッド、インスタンス・オブジェクトの工程でコーディングし、家を作りあげることをオブジェクト指向という)
※オブジェクトは、ふわっとしたおおまかなモノ 家
※インスタンスは、具体的なモノ ジャグジーのある家
クラス・コンストラクター・フィールド・メソッド・インスタンスまたはオブジェクト・オブジェクト指向を日常会話風にして理解する
- よーし。家建てるぞ~!!(オブジェクト指向)
- 設計図をください~!!(クラス)
- なるほど、この初期設定の条件で工事を開始すればいいんだな。よし始めるぞ!!(コンストラクター)
- よし部屋の位置の確認をしよう!!ここが寝室、ここが台所、ここが風呂(フィールド)
- ふんふんなるほど。寝室の機能はカーテンが音声で開閉できて、台所は食洗機がついていて、風呂はジャグジー機能がついているんだな(メソッド)
- トントントン! カンカンカン! ギュイーン! トンテンカン!おーし皆お疲れ様!いい家ができたなぁっ!!(オブジェクト・インスタンス化)
オブジェクト指向と合わせて、他のクラス・コンストラクタ・フィールド・メソッド・オブジェクト・インスタンスについても僕なりに解説しました。
【Processing】オブジェクト指向のカプセル化についても理解する
関連記事:【Processing】カプセル化について【オブジェクト指向で作ったモノの情報を直接いじらない方がいいという考え方】