アプリ開発でテストに強いアーキテクチャはこれだ!
開発者を悩ます「ソフトウェアアーキテクチャ選定」 迷った時に使える3つの判断基準(1/2 ページ)
さまざまなソフトウェアアーキテクチャが存在する中で、プロジェクトに合ったものを選ぶには何をよりどころにすれば良いのか。こうした開発者の悩みに対して、本連載を通してその答えを探る。新規アプリ開発を発注するなどプロジェクトに関わる際の参考としてほしい。
近年、AndroidやiOSなどのモバイルアプリ開発で使用されるソフトウェアアーキテクチャにはさまざまな種類があり、「この開発プロジェクトに最適なアーキテクチャはどれか」と悩む開発者の方も多いのではないでしょうか。
そこで本連載(全5回)では、アプリ開発現場でよく使われる代表的なソフトウェアアーキテクチャ「MVC」「MVP」「MVVM」「Flux」「Clean Architecture」それぞれの基礎を解説するとともに、テストフェーズを見据えたアーキテクチャ選定のコツを紹介します。
著者紹介:石黒 邦宏
デジタル・マジック・ラボでインターネット経路制御運用に関わり、オープンソースウェアで経路制御を実現する「GNU Zebra」を開発。1999年IP Infusionを共同設立し、CTOに就任。2009年Access CTO、2015年アプリックス CTOを経て、2018年デジタルハーツホールディングスCTOに就任。
「ソフトウェアアーキテクチャ」とは?
ソフトウェアアーキテクチャとは、プログラム構造を抽象化し、コードをシンプルに扱うための概念です。その最大の特長は、ソフトウェアのUI(ユーザーインタフェース)や内部ロジックといった機能コンポーネントをそれぞれ分離し、独立して扱えるという点です。それぞれが独立しているため、各機能を同時並行で開発することができ、プログラム変更があった場合も他のコンポーネントへの影響を最小限に抑えられるといった利点があることから、現在多くの開発現場でソフトウェアアーキテクチャが活用されています。
なぜアプリ開発にMVCが「使えない」のか
ソフトウェアアーキテクチャという概念は、1970年代に生まれました。実は意外と古い歴史を持つ概念です。この概念を一躍有名にしたのが、1980年代初頭に登場した「MVC」です。MVCは、「Model」「View」「Controller」の頭文字を取ったもので、デザインやレイアウトなどUIを制御する「View」という要素が初めて取り入れられたアーキテクチャです。Viewを取り入れた背景には、「Windows」や「Macintosh」といったGUI(グラフィカルユーザーインタフェース)で操作するOSの普及がありました。この頃から、徐々にUIの重要性が高まり、MVCは多くのソフトウェア開発で用いられる代表的なアーキテクチャとなりました。
Copyright © ITmedia, Inc. All Rights Reserved.
アプリ開発でテストに強いアーキテクチャはこれだ!
「プロジェクトに合ったソフトウェアアーキテクチャを選ぶには何を基準に選べば良いのか」そうした開発者の悩みに対して、答えを探っていきます。
この記事の著者
関連記事
こんなメディアも見られています
キーマンズネットに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
アクセスランキング
-
1
Javaアプレットは、なぜ今も情シスを悩ませる? 残った業務システムの“延命”問題
-
2
「Claude」3倍高速化の裏で、Anthropic開発者が「あえてしなかったこと」:899th Lap
-
3
AIエージェントでサイバー攻撃は100倍速に 2026年最新事例から見る防御策とは
-
4
CodexやClaude Codeが作ったアプリ、実は「未完成」かも 本当に「完成」させる“5つの条件”
-
5
資料を食わせるだけで自動化できる、「NotebookLM」の"ズルい"使いこなし術
-
6
自治体、企業で進む「Google回帰」 事例で分かる「Gemini Notebook」の活用アイデア
-
7
Excelの10万行データを3分でAIに処理させる、M365 Copilotの使い方
-
8
なぜ、Microsoft 365 Copilotは「会社の仕事を理解する」のがうまいのか?
-
9
「閉じた環境」で生成AIをどう使うか 大分市が「庁内だけで使える環境」を構築
-
10
今日から始める「AIエージェント」入門 ~Gemini Enterprise編~
キーマンズネット SNS
インフォメーション
注目情報をチェック
キーマンズネットをフォロー