オブジェクト指向入門前置き 「オブジェクト指向」を学ぶ前に

オブジェクト指向入門

これから、『プログラミング入門』シリーズの続きということで、
「オブジェクト指向」についてしっかりとやろうとおもいます。

『色んなプログラミング言語を覚えよう』の項で説明した通り、プログラミング言語のほとんどは
オブジェクト指向を使うものであるため、
仕事をやっていくためにはその使い方をしっかりと覚えておかなければなりません。

オブジェクト指向の学習は、プログラミング学習全体の過程的に、
「初級の中の上級」か、「中級の中の初級」ぐらいに該当すると思います。

この『オブジェクト指向入門』シリーズもそれぐらいの位置づけになります。

というわけで、じっくりとやっていきましょう。

プログラミング基礎からのステップアップ

さて、まずは本題に入る前に、自分(Raimu)のプログラミング学習経緯の話をします。

自分は大学の情報理工学部に入り、1年目でプログラミングの基礎をC言語で習いました。
2年目から後はその応用に入り、オブジェクト指向について初めに学んだのは「座学」でした。
大学の講義みたいな形式で学んだという感じです。

しかし、オブジェクト指向に関するプログラミング演習の授業はほとんど無かったので、
あまり実戦で使う機会がなく、これについてはピンと来ないまま過ごすことになりました。

3年目で研究室に入って、オブジェクト指向プログラミング言語である「C++」を扱うようになりましたが、そこでは既に書かれたソースコードを読んで、
必要に応じてちょっと作り変えていくぐらいで、
オブジェクト指向をちゃんと理解してプログラムが組めてるとは言い難いものでした。

オブジェクト指向に関して、
やっと実戦的な使い方が分かってきたのは社会人になってからでした。

まぁ、これは自分がたどった学習課程の内容とか、
大学での実戦内容の問題とか、自分の意欲の問題かもしれませんが、
オブジェクト指向というものはなかなか、
ちゃんとやるとなると理解するのが難しいものなんだと思います。
教える側も難しいのかもしれません。

オブジェクト指向マスターの難しさについて

単純にオブジェクト指向プログラミングをしていく分には、
「関数」を使ったプログラミングからグレードアップして、
「クラス」を使ってプログラミングをしていけば良いので、
決まった手順を覚えて使うだけだったら簡単と言えば簡単です。

しかし、オブジェクト指向を使っていくにおいては、
なんでこれを使う必要があるのか?とか、
どう有効活用していけば良いのか?も考えておかなければなりません。

オブジェクト指向やクラスの使用については、
使い方の手順を覚えるだけなら簡単だとしても、
それを使う意義や背景となる思想を理解し、使いこなすにはシステム開発特有の難しさがあります。

なので、ある程度の理解でオブジェクト指向を使ってプログラミングをしていく分には、
「初級の中の上級」か「中級の中の初級」ぐらいの位置づけになりますが、
バッチリ使いこなしていくには中級マスターぐらいになるか、
あるいは、完璧な設計を目指していくと上級の域にまで行くと思います。

そんな「オブジェクト指向」について、
これからじっくりとやっていこうと思います。

コメント