基本情報技術者試験 練習問題 38:オブジェクト指向と設計手法
ソフトウェア開発におけるデザインパターン(Design Pattern)について述べた文として、正しいものはどれか。
- オブジェクト指向設計において、過去のソフトウェア設計で得られたノウハウを再利用可能な形で分類・蓄積した設計の典型例である。
- ソースコードの可読性を高めるため、クラス名や変数名などの命名規則をプロジェクト単位で厳密に定めた統一的なコーディング規約である。
- プログラムの実行速度を最適化するために、コンパイラが自動的にソースコードを解析して機械語に変換する際の中間表現の形式である。
- システム開発において、要件定義からテストまでの全工程を反復的に行うことで、顧客の要望変更に柔軟に対応するための開発手法である。
- ソフトウェアのリリース後に発見された不具合を修正するために、パッチプログラムを段階的に適用してシステムを保守する運用手順である。
Qraftユーザーの成績:難易度 Cランク(レーティング1192)・正答率 57%(12/21回正解)
レーティングは解いた人の実力と正誤から算出する難しさ(初期値1200)。ランクはその全問題中の順位(S+が最難関、F-が最易)
正解と解説を見る
正解:オブジェクト指向設計において、過去のソフトウェア設計で得られたノウハウを再利用可能な形で分類・蓄積した設計の典型例である。
デザインパターンとは、オブジェクト指向設計において、過去の優れた設計ノウハウを再利用しやすいようにパターン化して名前を付けたものです。正解は該当する説明です。
【正解の理由】
システム開発で頻出する設計上の課題に対して、先人たちが編み出した解決策(ベストプラクティス)をカタログ化したものがデザインパターンであり、GoF(Gang of Four)の23種類のパターンなどが有名です。
【不正解の理由】
• 「命名規則などを定めたコーディング規約」という説明は誤り。デザインパターンは設計の構造や関係性のパターンであり、単なるコーディングルールではありません。
• 「コンパイラが変換する際の中間表現の形式」という説明は誤り。これは中間言語(バイトコードなど)の説明です。
• 「全工程を反復的に行う開発手法」という説明は誤り。これはアジャイル開発やスパイラルモデルなどの開発手法の説明です。
• 「パッチプログラムを段階的に適用する運用手順」という説明は誤り。これはパッチ適用や保守プロセスの説明であり、デザインパターンとは関係ありません。