35.オブジェクト指向の話

python言語はオブジェクト指向のプログラミング言語となります。

それではオブジェクト指向とはなんなのでしょうか?

pythonでは取り扱うものは全部「オブジェクト」
という概念となります。

例えば変数 a に 文字列 abc を代入すると、
この変数 a は 文字列型のオブジェクトになります。

In [1]:
# 文字列型のオブジェクト
a = 'abc'
print(a)
abc

関数とメソッド

次にリスト型の変数 l と要素を宣言して
そうするとこの変数 l はリスト型のオブジェクトになり、
同時にリストオブジェクトが持つ関数(メソッド)が使えるようになります。

In [2]:
# リスト型を定義
lis1 = [1,2,3]
# リスト型のメソッド
lis1.append(4)
print(lis1)
[1, 2, 3, 4]

厳密には関数とメソッドは違うものですが
分かりやすくいうと、リスト型でデータを追加するappend
などはリストオブジェクトそのものに対する操作になるので
メソッド、という取り扱いになります。

オブジェクト指向ではオブジェクトで定義された
関数と同じような書き方を
したものをメソッドと呼んでいます。

それ以外を関数と呼んでいます。

文字列型のオブジェクトを作れば、
そのオブジェクトが持つ関数はメソッドと言うことになります。

オブジェクト思考の概念

オブジェクト指向とは、何かしらの物(オブジェクト)で構成された
プログラミング言語のことを言い、
オブジェクトとは変数、データ型、関数、そしてクラスといったものが挙げられます。

プログラム上で何かしらのモノを作ってそれを取り扱ってゆくという考えが
オブジェクト指向の基本的な考え方になっていきます。

ここら辺は概念的なものなので
今すぐわからなくても良いし、わからなくても簡単なプログラムであれば
なんとかなるものです。ゆくゆくは覚えていってください。

この次の回ではクラスについて詳しくやっていきたいと思います。