アプリ開発でテストに強いアーキテクチャはこれだ!
開発者を悩ます「ソフトウェアアーキテクチャ選定」 迷った時に使える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
C言語は「危険」と言われても、専門家が「使う価値は十分にある」と言うワケ:900th Lap
-
2
かんぽ生命が営業報告を50分→10分に AI時代に見直すべき「データ入力」の仕組み
-
3
M365 Copilot全庁展開で月2000時間削減 現場がAIを「使いたくなる」習慣化の仕組み
-
4
6TBファイルのサーバ移行、M365ユーザーの八雲町がSharePointでなく「あえてBox」の理由
-
5
Claude Codeに「仕事を丸投げ」して事故らないための基本運用ルール
-
6
損保ジャパン、2万人の「Gemini活用」どう管理? 推進者が語る「リスク回避」の仕組み
-
7
「カスハラ対応」を個人に任せない 取手市がAIで変えた窓口業務
-
8
「Claude」3倍高速化の裏で、Anthropic開発者が「あえてしなかったこと」:899th Lap
-
9
社員の「セキュリティ訓練」、他社はどの程度やっている? 気になる隣の実施状況
-
10
20年物の基幹システム刷新に、マクロミルがあえて「全てを変えない」と決めた理由
キーマンズネット SNS
インフォメーション
注目情報をチェック
キーマンズネットをフォロー