アプリ開発でテストに強いアーキテクチャはこれだ!
開発者を悩ます「ソフトウェアアーキテクチャ選定」 迷った時に使える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
ニンテンドーシステムズ開発者が明かす、通信「低遅延・安定運用」のコツ【事例集】
-
2
「Gemini Notebook」で利用者10倍 シニア社員をAIヘビーユーザーにした首都高の考え
-
3
スクエニ開発陣が「ドラゴンクエストX」の世界観を守るのに「Gemini」が必要だったワケ
-
4
“壊してもいい”が現場を変えた 岩塚製菓、生産性1.3倍を生んだDX定着の条件
-
5
スウェーデン発、AI議事録Klangが日本上陸 無料で文字起こし無制限
-
6
製造業の73%が「生成AIに仕事を頼みたいのに頼めない」理由とは
-
7
Windowsを使い続けるのは正解か? 「Linux化」というモダナイズのもう一つの選択肢
-
8
「新しいOutlook」って使ってる? 移行で変わるメール誤送信対策
-
9
電子化した、ファイルサーバも捨てた なのになぜ、ファイルはどこにもない?
キーマンズネット SNS
インフォメーション
注目情報をチェック
キーマンズネットをフォロー