今日では開発には必ずと言っていいほどオブジェクト指向の考え方が必要になっている。とはいえ、オブジェクト指向とはどういうものかというと分からないというのが往々にしてある。実際、オブジェクト指向という言葉そのものが曖昧な意味を持っているからであると考えている。
さて、私の場合、オブジェクト指向というのは主にプログラミング言語のパラダイムとして、オブジェクト指向プログラミング言語をさして言う場合が多いが、これはオブジェクト指向の開発手法に適合したプログラミング言語の形と言える。
オブジェクト指向は、システムの枠組みとして、あらゆるものを小さなプログラムの集合体として成立すると考えるとよく、例えばデジタル形式の目覚まし時計を想定した場合、時刻を計算する装置、時刻を表示する液晶ディスプレイ、時間を判定する装置、目覚ましアラームを鳴らす装置、アラームを止めるボタンなどがそれぞれの役割を果たして目覚まし時計が成り立っているという形である。例えばAM6:00に目覚ましを鳴らすという設定をしていた場合、時刻を計算する装置が時刻がかわるに従ってAM6:00かどうかを調べて、そうであればアラームをならす装置にアラームを鳴らせと命令する。もしアラームをとめるボタンが押されればアラームを鳴らす装置にならすのをやめろと命令するといった具合である。その感じのプログラムが互いにメッセージを送ることによって一つのプログラムが出来上がっているのである。
なお、オブジェクト指向言語ではカプセル化という、データを隠蔽したり、やりとりを隠蔽したりとする要素や、ポリモーフィズムというオブジェクトの操作は送り手ではなくて、受け手によって決まるという特徴を有しているものが多いが、これはここでは割愛する。
こうすることによって、複雑なプログラムでも、少しでも作りやすくなっていると言える。
今日ではオブジェクト指向はほぼ必須なので、ぜひとも簡単でもいいのでどういうものなのかを覚えて、使いこなしていきたい。
ウェブマスター。本ブログでITを中心にいろいろな情報や意見などを提供しています。主にスマートフォン向けアプリやウェブアプリの開発を携わっています。ご用の方はコメントかコンタクトフォームにて。