Model–view–adapter
Model–view–adapter (MVA) is an architectural pattern and multitier architecture, used in software engineering. In complex computer applications that present large amounts of data to users, developers often wish to separate data (model) and user interface (view) concerns so that changes to the user interface will not affect data handling and that the data can be reorganized without changing the user interface. The model–view–adapter solves this in a similar way as model–view–controller does, additionally decoupling the view from the model such that views can be used with multiple models. As such, only the adapter has knowledge of both the model and the view. Additionally, multiple adapters may be created to change the way one view presents data for a given model.