基本情報技術者試験「オブジェクト指向」の問題
オブジェクト指向において、オブジェクトの内部データを外部から直接操作できないように隠し、公開した手続(メソッド)を通じてのみアクセスさせることで、内部実装の変更が外部へ波及しにくくする考え方はどれか。
ア継承
イカプセル化
ウ多相性(ポリモーフィズム)
エ委譲
正解
イ.カプセル化
カプセル化は、オブジェクトの属性(データ)を外部から直接触れないよう隠蔽し、公開した操作(メソッド)を介してのみ利用させる。内部の実装を変えても外部のインタフェースが保たれれば影響が及ばないため、設問の『変更が波及しにくい』という効果に合致する。
?選択肢ごとの解説
ア ×継承は既存クラスの性質を引き継いで新しいクラスを定義する仕組みであり、データを隠蔽してアクセスを限定する考え方ではない。
イ ○カプセル化は、オブジェクトの属性(データ)を外部から直接触れないよう隠蔽し、公開した操作(メソッド)を介してのみ利用させる。内部の実装を変えても外部のインタフェースが保たれれば影響が及ばないため、設問の『変更が波及しにくい』という効果に合致する。
ウ ×多相性は同じ操作呼び出しが対象の型に応じて異なる振る舞いをする性質であり、内部データの隠蔽を意味するものではない。
エ ×委譲は処理を他のオブジェクトに任せる手法であり、内部データを隠蔽してアクセスを制御するカプセル化とは目的が異なる。
✎くわしく
オブジェクト指向の三本柱はカプセル化・継承・多相性である。カプセル化は『隠す』、継承は『引き継ぐ』、多相性は『同じ呼び方で違う動き』と整理できる。カプセル化の本質は実装と利用の分離(情報隠蔽)であり、これによりモジュール間の結合が弱まり保守性が高まる。継承や委譲は再利用の手段で、隠蔽とは観点が異なる。
✓本番での押さえどころ
試験のコツ
『内部データを隠す』『メソッド経由でのみ操作』とあればカプセル化と判断する。
覚え方
カプセル化=薬のカプセルのように中身を包んで直接触らせない、とイメージする。
よくある誤り
三本柱の用語を取り違えやすい。データを隠して操作経由でアクセスさせる点はカプセル化に固有である。
開発技術の他の問題
アジャイル開発の手法であるスクラムにおいて、スプリントごとに動作するソフトウェアを開発チームが実際に作り上げ、その成果物をプ…ソフトウェアのテストにおいて、プログラムの内部構造には着目せず、入力に対する出力が仕様どおりであるかを検証する手法を採用した…あるシステムのファンクションポイント(FP)を見積もったところ、未調整FPは200であった。技術的複雑度を表す調整係数が0.…ソフトウェアの企画から開発・運用・保守・廃棄までの各活動について、取得者と供給者が同じ言葉で役割や作業範囲を取り決められるよ…ある開発プロジェクトでは、要件定義・設計・実装・テストの各工程を上流から下流へ順に進め、前工程の成果物を承認してから次工程へ…開発対象を複数の部分に分け、各部分について計画・リスク分析・開発・評価の活動を繰り返し、評価のたびにリスクを見極めながら少し…
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a2-0018