アプリ開発でテストに強いアーキテクチャはこれだ!
開発者を悩ます「ソフトウェアアーキテクチャ選定」 迷った時に使える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
「Copilot、Word文書まとめて」で社内全滅? 勝手に増殖するAIウイルスで大騒ぎ:895th Lap
-
2
ソニー子会社、M365環境にあえて「Gemini」を導入 システムを競合させない工夫とは
-
3
現役情シスに聞いた「忙しすぎる理由」 やりたいけど手が回らない仕事とは? 228人調査
-
4
「AIコーディングで高速開発」が、なぜ企業の弱点に? 開発部門のAIとの付き合い方
-
5
SOAPはRESTに負けたのか? 「古いAPI」を残すか見直すか
-
6
【対談】「ひとり情シス」は悪ではない 担当者が辞めても「回る情シス」の作り方
-
7
「AIを入れたのに、仕事が変わらない」 企業が見落としている"使い方"
-
8
「Gemini Notebook」で利用者10倍 シニア社員をAIヘビーユーザーにした首都高の考え
-
9
取手市、生成AIを「使わなくてもいいよ」でまさかの定着成功 その以外な効果とは
-
10
三井不動産に不正アクセス、最大5万5000件の情報漏えい可能性 一連の流れを整理
キーマンズネット SNS
インフォメーション
注目情報をチェック
キーマンズネットをフォロー