The Controller between Model and View:
The Controller layer acts as the bridge between the
Data Model and Interface View layer. It receives the
notifications generated by the view layer and uses them
to make the corresponding changes in the Data Model.
For example, if the data in the data layer changes for
some reasons (perhaps because of some internal
computation loop), it notifies an appropriate controller
object, which then updates the views. For example, in
the system, when learners change their location from A
to B, the location information will be updated in the data
model be matched with another learning object. Then
the data model will send a notification to Controller to
ask the Interface Views to display the new AR contents.