So, you want to get in to mobile programming or simply curious as to how an app functions on your phone? Well, hopefully this post aids you on your journey into becoming a mobile developer or satisfies your learning thirst. We are all glued to small computers that we carry in our pockets, but most of the population carrying these life changing devises do not have a clue as to how their favorites apps function; why sometimes an app would randomly close down, or why an app would kill your phone all together. 

There are three main aspects of an App. There is the interface or view, the back end or controller, and the data aspect of the app or the model.

View:

The view is what you see upon opening the app. Which could be images, buttons, text, etc. Additionally, this aspect of the app is responsible for user interaction and making sure the user has a good experience navigating the app. For example, this could be any posts you see while scrolling down Instagram or Facebook.

Controller:

The backend of the app or controller is where the logic to run the app is found. This aspect of the app can be seen as the middle man between the user interface and the model, the transfer of data. The controller is responsible for handling all of the requests of the user and any imputed information to be stored in data.  An example of the controller could be the logic that handles you inputted text when you want to send out a tweet or post something on Instagram or Facebook.

Model:

The model is what keeps track of data passed though the controller from the view or reversely data being passed though the controller to be displayed to the user, you, as a view. This could be a request from you to the operating system (IOS or Android) to be able to see the images that you have on your phone to be able to post online.

In a nut shell, this Model-View-Controller architecture is how most mobile apps function. Hopefully this post served you as a good insight into mobile development and gave you some knowledge as to how some of your favorite apps work.