Skip to main content

App Architecture

App architecture is a consistent plan that needs to be made before the development process starts. 

App architecture offers a road map for how the various application components must be set up and connected. It defines how the UI, database and background tasks interact to make the required job possible.

We have used MVC(Model View Control) architecture to build our app. 



MVC is known for handling multiple views and huge volumes of data effectively. There are three  components in MVC:

  • Model: The model contains data about the application. All the information which must be stored or displayed and access specifications are mentioned here. 
    model.java serves as our model class.
  • View: View forms the UI part of the app. Views displays model data to the users and allow them to modify the data. The Layouts form the view. 
  • Controller: The controller handles user requests and controls user navigation within the app. It processes user input. The Activities and the Fragments form the Controller.


Comments

Popular posts from this blog

Languages and Applications Used

We will be detailing the software, languages and frameworks used to build the app: Android Studio:  It is the official integrated development environment(IDE) for Android application development. It incorporates various code editing and developer tools for a smooth and user-friendly user experience. It also has various options to run and debug code. Android Studio uses a build automation tool known as Gradle for compiling, linking and packaging the code. We had learnt to use Android Studio as a part of our course. Java : Java is a general purpose programming language which provides object oriented programming concepts like encapsulation and inheritance. We used Java for Backend programming. XML : XML stands for eXtensible Markup Language. It is generally used to develop web pages and web applications. XML has advantages like letting the user make their own descriptive tags based on his/her needs. We used XML for frontend programming.              ...

App Features(Vendor)

Here we talk about the Vendor's side of the app:  The Vendor Homepage contains a fragment that displays the corresponding layout of the item clicked in the sidebar. As soon as the vendor is logged in OutletMenu Fragment is called which displays the menu of the vendor's outlet, where the vendor and add, update and delete items from his menu. Based on the customer's requirements and usability, we have developed an exclusive set of fragments and an activity. OutletMenu: This fragment will be called default after the vendor is logged in. It displays the menu of the vendor's outlet. It contains a recycler view, which populates itself using outletMenu_adapter by querying the Menu corresponding to the vendor's outlet in the Database using Firebase UI. The vendor also has the option to edit and delete items from the existing menu. When the vendor clicks on the edit option, a Dialog using DialogPlus class is built and the current values are retrieved from the databases an...

App Features(Customer)

Here, we talk about the Customer's side of the app: The customer Homepage contains a fragment that displays the corresponding layout of the item clicked in the sidebar. As soon as the customer is logged in OutletList Fragment is called which displays the list of outlets present, where clicking on a particular outlet, will take them to the particular menu of the outlet. We've used Firebase UI in all fragments. Firebase UI is a class provided by Firebase SDK to make a query in the database to fetch appropriate data. Based on the customer's requirements and usability, we have developed an exclusive set of fragments. OutletList: This fragment will be called after the user is logged in. It will consist of a list of eateries that are open at any given time. It contains a recycler view, which populates itself using outletList_adapter by querying the List of Vendors in the Database using Firebase UI.  OutletMenu: On selecting one of the outlets, this fragment is called which di...