令和3年度 ITパスポート試験 公開問題 問41 解説 オブジェクト指向
クラスや継承という概念を利用して,ソフトウェアを部品化したり再利用するこ とで,ソフトウェア開発の生産性向上を図る手法として,適切なものはどれか。
- ア オブジェクト指向 ✓ 正答
- イ 構造化
- ウ プロセス中心アプローチ
- エ プロトタイピング
解説
この問題は、キーワードの対応関係だけで即座に正解が導き出せます。「クラス」や「継承」という言葉が出てきたら、迷わず「オブジェクト指向」を選んでください。これらはオブジェクト指向プログラミングにおける中核的な仕組みだからです。
オブジェクト指向とは、ソフトウェア開発においてデータとそれに対する処理を「オブジェクト」というひとまとまりの部品として扱う考え方です。従来のプログラミング手法が手順(処理の流れ)を重視していたのに対し、オブジェクト指向は「何(データ)」が「どのような振る舞い(処理)」をするかに焦点を当てます。
クラスと継承の役割について詳しく見ていきましょう。
クラスとは、オブジェクトを作成するための設計図です。例えば「車」というクラスを作れば、それを元に「スポーツカー」や「トラック」といった具体的な個々のオブジェクト(インスタンス)をいくつも生成できます。
継承とは、既存のクラスの性質を別のクラスが受け継ぐ仕組みです。例えば「車」というクラスに「走る」「止まる」という機能を定義しておけば、「電気自動車」クラスを作成する際に、わざわざ「走る」という機能を書き直さなくても、車クラスから機能を継承することで再利用できます。
この手法の大きな利点は、一度作ったプログラム部品を別のプロジェクトでも使い回せる点にあります。修正が必要な場合も、影響範囲がその部品内に留まりやすいため、大規模なシステム開発において生産性と保守性を高めるために不可欠な技術となっています。
他の選択肢について整理すると、構造化は処理を機能単位で順次・選択・繰り返しの3つに整理して記述する手法、プロセス中心アプローチは業務フローなど処理の流れを起点にする手法、プロトタイピングは試作品を早い段階で作成してユーザーと確認しながら開発する手法です。これらはすべて開発の生産性向上に寄与しますが、クラスや継承という具体的な用語と結びつくのはオブジェクト指向のみです。
ITパスポート試験では、オブジェクト指向に関連して「カプセル化(データと処理を隠蔽して外部から直接触れられないようにすること)」や「ポリモーフィズム(同じ命令でも対象によって異なる動作をすること)」という用語もよく狙われます。これらも合わせて覚えておくと、関連問題にもスムーズに対応できます。
- 3分でわかる!オブジェクト指向とは(ITパスポート学習サイト)
- クラスと継承とは(プログラミング学習サイト)