OO

記事数:(2)

ソフトウェア

部品を組み立てるように作る、オブジェクト指向とは

物の見方、考え方を変えることで、複雑な仕組みを作る方法を学びます。これまで、計算機に仕事をさせるには、手順を順々に細かく書き出す必要がありました。例えば、ご飯を炊く手順を説明するように、米を研ぎ、水を入れ、スイッチを押す、といった具合です。しかし、この方法だと、手順が複雑になるにつれて、全体を把握するのが難しくなります。そこで登場するのが、物の見方を変える方法、つまり「もの中心の考え方」です。 もの中心の考え方では、まず、何が必要かを考えます。ご飯を炊く例で言えば、炊飯器が必要です。炊飯器には、米を研ぐ、水を入れ、加熱する、蒸らすといった機能が備わっています。私たちは、炊飯器の内部の仕組みを知らなくても、ボタンを押すだけでご飯を炊くことができます。このように、機能をまとめたものを「もの」として捉え、その「もの」同士を組み合わせることで、複雑な作業を単純化できます。 計算機の仕組み作りにも、この考え方を取り入れることができます。それぞれの「もの」には、データと、そのデータを扱う手順が備わっています。例えば、画面に文字を表示する「もの」、計算を行う「もの」、データを保存する「もの」などです。これらの「もの」は、互いに情報をやり取りしながら、連携して動作します。 もの中心の考え方を使う利点は、大きく分けて二つあります。一つ目は、仕組み全体の把握が容易になることです。それぞれの「もの」の役割が明確になるため、全体像が見えやすくなります。二つ目は、変更や修正が容易になることです。ある「もの」に変更を加えても、他の「もの」に影響を与える可能性が低いため、修正作業が楽になります。 このように、もの中心の考え方は、複雑な仕組みを理解しやすく、扱いやすくする効果的な方法です。おもちゃのブロックを組み合わせて、様々な形を作るように、計算機の仕組みも、「もの」を組み合わせて、多様な機能を実現できます。
開発

オブジェクト指向:ITの設計思想

ものごとの全体を把握することは、複雑な仕組みを理解する第一歩です。特に、現代の多くの情報処理の仕組み作りでは「もの」を中心にした考え方、すなわち、もの指向という設計の考え方が重要です。もの指向とは、複雑な仕組みを、それぞれが独立した働きを持つ「もの」という部品に分解して考える方法です。ちょうど、時計を分解すると、歯車やぜんまい、針といった部品に分かれるように、情報処理の仕組みも、様々な部品、つまり「もの」から成り立っていると考えるのです。 それぞれの「もの」は、情報と、その情報を操作する手順を内包しています。例えば、時計の針という「もの」は、現在の時刻という情報と、時刻に合わせて動くという手順を持っています。そして、「もの」同士は互いに連携することで、複雑な処理を実現します。時計で言えば、歯車が回転することでぜんまいがほどけ、その力が針を動かすといった具合です。もの指向の利点は、変更に強いことです。もし、時計の針のデザインを変えたい場合でも、針という「もの」だけを交換すれば済みます。他の部品に影響を与えることなく、変更できるのです。 従来の情報処理の仕組み作りでは、手順を中心に考えていました。これは、料理のレシピのように、手順を一つずつ記述していく方法です。しかし、この方法では、手順が複雑になると全体を把握しにくくなり、変更にも弱くなります。もの指向では、「もの」に情報と手順をまとめることで、仕組み全体を整理し、変更にも柔軟に対応できるようになります。また、作った「もの」は他の仕組み作りでも再利用できます。一度作った時計の針を、別の時計にも使えるようにです。このように、もの指向は、複雑な情報処理の仕組みを、理解しやすく、作りやすく、変更しやすいものにするための、現代の情報処理の仕組み作りには欠かせない考え方なのです。