アプリケーション設計パターン — 繰り返し使える設計の「型」
導入
アプリを作るたびに「同じような問題」に悩むエンジニアたちが、先人の知恵を「型」としてまとめたのがデザインパターンです。設計の共通言語を知っておくと、試験問題の意図がすっきり見えてきます。
くわしく知ろう
デザインパターンとは、ソフトウェア設計でよく登場する問題に対する「再利用可能な解決策の型」を指します。GoF(Gang of Four)の23パターンが有名で、生成・構造・振る舞いの3カテゴリに分類されています。試験ではパターン名の意味や用途が問われることがあります。
中でも重要なのがMVC(Model-View-Controller)です。アプリケーションをデータを扱うModel、画面表示を担うView、両者を仲介するControllerの3要素に分離する設計手法を指します。変更の影響範囲を限定できるため、Webアプリを中心に広く採用されています。
APIゲートウェイは、複数のバックエンドサービスへのアクセスを1か所で受け付け、認証・ルーティング・レート制限などを一元管理する仕組みです。マイクロサービスアーキテクチャ(小さなサービスを組み合わせてシステムを構成する方式)との組み合わせで使われることが多くなっています。
このほか、シングルトンパターン(インスタンスを1つだけ生成する)やファサードパターン(複雑な内部処理をシンプルなインターフェースで隠す)も、試験で用語として問われることがあります。
具体例
たとえばECサイトでは、商品データを管理するModel・商品一覧を表示するView・検索処理を仲介するControllerがMVCとして分離されています。一方、スマホアプリのAPIゲートウェイは、天気・地図・決済など複数のサービスへの窓口を1つに束ねる役割を果たしています。
まとめ・試験ポイント
- デザインパターン=設計の再利用可能な「型」(GoFの23パターンが基本)
- MVC=Model(データ)・View(画面)・Controller(制御)の分離
- APIゲートウェイ=複数サービスへのアクセスを一元管理する窓口
- シングルトン=インスタンスを1つに制限するパターン
- 試験ではMVCの各役割とAPIゲートウェイの目的が問われることが多い
学習した内容を試験形式で確認しよう。ITパスポート入門試験100問に挑戦できます。
入門試験100問に挑戦する