はかせのラボ

私の頭の中を書いていく雑記ブログです

私が考えるオブジェクト指向

あいさつ

どうも、はかせです。
今回は新年一発目ということでポエムです。
私がオブジェクト指向について
思っていること・考えていることを書いていきます。

オブジェクト指向とは

プログラミングパラダイムの1つで、
オブジェクト同士の相互作用を使ってシステムを構築する方法です。
オブジェクトとはデータと処理をひとまとめにしたものです。
(C++C#ではクラスと呼ばれているものですね)

オブジェクト指向の強み

私が考えるオブジェクト指向の強みは
管理をオブジェクト単位で行える
という点だと思っています。

私が今勉強中のC++で言うとシステムの設計をクラス単位で行えるということです。

それって当たり前じゃない?

そうですね。

クラスを作って
変数作って
メソッド作って
作ったメソッドを呼んで処理をする。
プログラミングを行う上で基本中の基本ですね。

じゃあなんでそんな当たり前のことが強みなのかということなんですが
オブジェクト指向が登場した時代と今の時代のプログラミングが変わってるからです。

オブジェクト指向が生まれたのは1970年代です。
今は2019年です。
もう既に40年ぐらい経っているわけです。
そりゃ色々変わりますよね。

オブジェクト指向が登場した当時は手続き型全盛で
データも処理も全部ひとまとめにずらーっと書かれていたそうです。

ただハードウェアの性能が向上し、
ソフトウェアの開発コストが跳ね上がり
今までのやり方では無理だということで開発されたのが
オブジェクト指向です。

オブジェクト指向の登場によって
コードの再利用が出来たり、
渡すデータを変えるだけで処理を変えることが出来るようになったりと
開発効率が向上しました。

そしてそれ以降出てくる言語は
オブジェクト指向がベースとなっていきました。
そしてそれが40年も続いたわけです。
主流となっている言語も新しく出てきた言語に変わりました。
使う言語が変わったということはプログラミングも変わったということです。

つまり今となってはプログラミング≒オブジェクト指向になってきているわけで
特段意識しなくてもオブジェクト指向で組むようになってきているのです。

オブジェクト指向は難しい?

背景から何から何まで全部理解しようとしたら難しいと思います。
ただどういうものかという概念と使い方だけならば
そこまで難しくないと思います。

なぜならさっきも書きましたが、
特段意識しなくてもオブジェクト指向で組むようになってきているからです。

ただ普段意識してないことを意識してやろうとすると難しく感じます。
オブジェクト指向が難しいと感じる理由はそれだと思います。

あとがき

今回はポエムでした。
私がオブジェクト指向に対して思っていること・考えていることを
書いてみました。

あくまで今回書いたことは私個人の考えなので、
間違っていることや違うと思うことがあると思います。
その時はコメントやTwitterで言ってくれると喜びます。

それでは今回はこの辺でノシ