前回「開発者を悩ます『ソフトウェアアーキテクチャ選定』迷った時に使える3つの判断基準」では、MVCアーキテクチャについて説明しました。MVCは「ソースコードの再利用性」という課題を解決したアーキテクチャであり、多くの開発の現場でも活用されています。しかし、MVCアーキテクチャよりもさらに柔軟性を持ったアーキテクチャが生まれました。それがModel、View、Presenterのモジュールから成る「MVP」です。今回は「MVP」の特長とテスタビリティーについて解説します。
デジタル・マジック・ラボでインターネット経路制御運用に関わり、オープンソースウェアで経路制御を実現する「GNU Zebra」を開発。1999年IP Infusionを共同設立し、CTOに就任。2009年Access CTO、2015年アプリックス CTOを経て、2018年デジタルハーツホールディングスCTOに就任。
インターネットが普及したことで、ソフトウェアベンダーは簡単にアップデートプログラムを提供できるようになり、その一方で開発側はソースコードを頻繁に修正、変更する必要性が出てきました。そこで「ソースコードの変更耐性」という新たな課題が生まれました。これを解決するアーキテクチャとして生まれたのが「MVP」(Model/View/Presenter)です。「MVP」は異なる複数のViewを同時にサポートするために生み出されたもので、Viewとの独立性が非常に高いアーキテクチャです。
Copyright © ITmedia, Inc. All Rights Reserved.
ホワイトペーパーや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます。